Ola… tentei entrar na lista mas nao consegui como funciona… tenho cadastro no java.net. Olhei na lista e tbm nao achei solucao. Entao vou postar por aqui minha duvida. Vou tentar verificar o erro dito acima e caso nao consiga posto novamente…
Mas agora, estou fazendo uns testes antes de implementar o genesis em meus projetos, e estou tentando fazer bind de uma propriedade Object em uma classe. Segue os codigos:
classe Cliente:
package modelo;
import net.java.dev.genesis.annotation.Action;
import net.java.dev.genesis.annotation.DataProvider;
import net.java.dev.genesis.annotation.Form;
@Form
public class Cliente extends Pessoas{
private String telefone;
private String cidade;
private Filiacao filiacao = new Filiacao();
/** Creates a new instance of Cliente */
public Cliente() {
}
public String getCidade() {
return cidade;
}
public void setCidade(String cidade) {
this.cidade = cidade;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public Filiacao getFiliacao() {
return filiacao;
}
public void setFiliacao(Filiacao filiacao) {
this.filiacao = filiacao;
}
@Action
public void teste() {
javax.swing.JOptionPane.showMessageDialog(null,"nome OB: "+getNome());
javax.swing.JOptionPane.showMessageDialog(null,"endereco OB: "+getEndereco());
javax.swing.JOptionPane.showMessageDialog(null,"telefone OB: "+getTelefone());
javax.swing.JOptionPane.showMessageDialog(null,"cidade OB: "+getCidade());
javax.swing.JOptionPane.showMessageDialog(null,"nomePai OB: "+getFiliacao().getNomePai());
javax.swing.JOptionPane.showMessageDialog(null,"nomeMae OB: "+getFiliacao().getNomeMae());
}
}
classe super Pessoas:
package modelo;
public class Pessoas {
private String nome;
private String endereco;
public Pessoas() {
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
}
classe Filiacao:
package modelo;
import net.java.dev.genesis.annotation.Form;
@Form
public class Filiacao {
private String nomePai;
private String nomeMae;
/** Creates a new instance of Filiacao */
public Filiacao() {
}
public String getNomePai() {
return nomePai;
}
public void setNomePai(String nomePai) {
this.nomePai = nomePai;
}
public String getNomeMae() {
return nomeMae;
}
public void setNomeMae(String nomeMae) {
this.nomeMae = nomeMae;
}
}
tela swing:
package javaapplication4;
import controle.ClienteAction;
import modelo.Cliente;
import modelo.Filiacao;
import net.java.dev.genesis.annotation.ViewHandler;
import net.java.dev.genesis.ui.swing.SwingBinder;
@ViewHandler
public class TelaCliente extends javax.swing.JDialog {
Cliente cli = new Cliente();
public TelaCliente(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
SwingBinder binder = new SwingBinder(this, new Cliente());
binder.bind();
SwingBinder binder = new SwingBinder(this, new Filiacao());
binder.bind();
}
Lembrando que tenho 6 txtFields com a propriedade name setada para “nome”,“endereco”,“telefone”,“cidade”,“nomePai” e “nomeMae”.
Lembrando tambem que a propriedade Filiacao em cliente é somente para teste, sem relação a nenhuma análise ou arquitetura.
A classe cliente extende de Pessoas… na super Pessoas nao coloquei @Form, pois cliente herda os metodos, está correto? Pelo menos funciona…
O problema está na classe Filiacao… todos os outros atributos retornam valor do swing, mas em Filiacao está nulo. Tentei inserir @DataProvider(objectField=“filiacao”) do getFiliacao mas retorna erro, pois teria que retornar uma Collection … como faria esse bind? Somente quero inserir e retornar valores do objeto filiacao em cliente.
Sobre inserir em tabelas/comboBox, lí e entendi a referencia de @DataProvider… mas estou com uma dúvida: no caso do comboBox, o retorno dos valores seriam o objeto inteiro que fora colocado (Ex Cliente) ou a propriedade desse objeto (ex String nome) ?? E tambem no caso da tabela, seria cada coluna referencia aos propriedades dos objetos (Ex nome) ou o objeto em si (Ex Cliente)…
abraços
jopss 8)