Executando suas aplicações Pivot no Eclipse

Já conhecia o Pivot desde que a Apache tornou ele um projeto top, mas a postagem do Luiz_Gustavo no Guj sobre a versão 2.0 da tecnologia RIA da Apache, me fez relembrar e também testá-lo!

Ao tentar executar os exemplos no Eclipse, tive que configurar um parâmetro. Então, se quiser executar coisas do Pivot no Eclipse, ai vai um pequeno guia.

  • Primeiro, crie um projeto Java comum (desktop).
  • Adicione os JARS do Pivot ao classpath do seu projeto
  • Existem duas classes que permite rodar suas aplicações no Eclipse: org.apache.pivot.wtk.DesktopApplicationContext e org.apache.pivot.wtk.ScriptApplication. Eu uso a primeira enviando o nome da classe que será executada como parâmetro. Abaixo prints da minha configuração para executar uma classe onde chamo os meus bxmls (arquivos XMLs com a interface com o usuário). Importante é que a classe enviada deve implementar a interface org.apache.pivot.wtk.Application.
  • Pode executar agora, deve funcionar! Se sua aplicação for Java puro, como o Hello World do Pivot (abaixo), só executar essa classe e enviar o nome dela (não se esquecendo dos pacotes) como parâmetro:
    package hello;
    import java.awt.Color;
    import java.awt.Font;
    
    import org.apache.pivot.collections.Map;
    import org.apache.pivot.wtk.Application;
    import org.apache.pivot.wtk.Display;
    import org.apache.pivot.wtk.HorizontalAlignment;
    import org.apache.pivot.wtk.Label;
    import org.apache.pivot.wtk.VerticalAlignment;
    import org.apache.pivot.wtk.Window;
    
    public class HelloJava implements Application {
    	private Window window = null;
    
    	@Override
    	public void startup(Display display, Map<String, String> properties) {
    		window = new Window();
    
    		Label label = new Label();
    		label.setText("Hello World!");
    		label.getStyles().put("font", new Font("Arial", Font.BOLD,150));
    		label.getStyles().put("color", Color.GREEN);
    		label.getStyles()
    				.put("horizontalAlignment", HorizontalAlignment.CENTER);
    		label.getStyles().put("verticalAlignment", VerticalAlignment.CENTER);
    
    		window.setContent(label);
    		window.setTitle("Hello World!");
    		window.setMaximized(true);
    
    		window.open(display);
    	}
    
    	@Override
    	public boolean shutdown(boolean optional) {
    		if (window != null) {
    			window.close();
    		}
    		return false;
    	}
    
    	@Override
    	public void suspend() {
    	}
    
    	@Override
    	public void resume() {
    	}
    }
    
  • Para rodar os xmls eu uso uma classe Java, que peguei nos tutoriais do Pivot, e uso a classe org.apache.pivot.beans.BXMLSerializer para carregar ela na minha window. Existe outra forma de fazer isso usando a ScriptApplication do Pivot, mas ainda não procurei saber como faz….
    package basicComponents;
    
    import org.apache.pivot.beans.BXMLSerializer;
    import org.apache.pivot.collections.Map;
    import org.apache.pivot.wtk.Application;
    import org.apache.pivot.wtk.Display;
    import org.apache.pivot.wtk.Window;
    
    public class Runner implements Application {
    	private Window window = null;
    
    	@Override
    	public void startup(Display display, Map<String, String> properties)
    			throws Exception {
    		BXMLSerializer bxmlSerializer = new BXMLSerializer();
    		String toRun = "oSeuBxmlAqui.bxml";	
    
    		window = (Window) bxmlSerializer.readObject(Runner.class, toRun);
    		window.open(display);
    	}
    
    	@Override
    	public boolean shutdown(boolean optional) {
    		if (window != null) {
    			window.close();
    		}
    
    		return false;
    	}
    
    	@Override
    	public void suspend() {
    	}
    
    	@Override
    	public void resume() {
    	}
    }
    

É isso. Espero que seja útil pra alguém!

[EDIT]

O usuário Molmedo, do Guj, mostrou outra forma para executar suas aplicações sem precisar mexer nas configurações do Eclipse:

public static void main(String[] args) {  
     DesktopApplicationContext.main(SuaClasse.class, args);  
}  

2 Respostas

  1. Primeiramente parabéns pelo blog.
    Só queria deixar uma dica para você, como bastante gente possui dificuldades com Jtable(inclusive eu), talvez seria uma iniciativa esclarecer as dúvidas do pessoal através do blog, iniciando os primeiros passos de como criar uma tableModel (já que a maioria do pessoal não recomenda o DefaultTableModel).

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: