Genesis Framework, como bindar entidades corretamente?

Pessoal, postei essa dúvida na lista de discussão do Framework, mas acredito que a galera esteja muito ocupada por lá. Vou repetir meu POST aqui, e se alguem puder ajudar, fico muito grato!!! :slight_smile:

Participo do desenvolvimento de uma aplicação de automação comercial, e uma parte dela será Desktop, com Swing.
Como a aplicação não será somente isto, dividimos ela em várias projetos, sendo o da interface Desktop um deles.
Um dos projetos refere-se somente as entidades de classe, e alguns helpers relacionados. Estamos usando JPA + Hibernate( Annotations ) para persistência, e também a pattern de DAOS.

Bom, desculpem por todo o rodeio até aqui, mas achei que poderia ser de ajuda quanto a minha dúvida.
Sou iniciante em Java, este é de fato meu primeiro projeto na Linguagem. Trabalhava somente com PHP antes, mas estou lendo muito :)…
Todavia, ja li bastante coisa na documentação do Genesis, e preciso utilizá-lo quase que exclusivamente para BINDs ( também vou estudar as funcionalidades para validações, etc ), pois quero bindar meus Beans de entidade, e assim, ter uma gerência mais simples da Interface, sem precisar ficar alimentando interface/bean, bean/interface, etc.

Pelo que vi, o Genesis pode bindar classes @Form, devidamente encapsuladas. Porém, eu não gostaria de anotar minhas entidades de classe com @Form, para não misturar as bolas. Essas entidades serão utilizadas por outros projetos, e não gostaria de misturar as coisas.

Eu gostaria de saber, se posso ter uma classe intermediaria entre a minha de entidade, sem ter que copiar os métodos que a entidade têm, diretamente para esta classe, e bindar as propriedades da entidade, através de outra, exemplo:

// Classe de representacao de entidade ( Mapeada via JPA )
@Entity
Class EntidadeX {
    private String nome;
    private String sobrenome;

    public void setNome(String nome) {
        this.nome = nome;
    }

   public String getNome() {
       return this.nome;
   }

  //... Encapsulamento de sobrenome tb....

}
// Classe para representar o form Genesis
@Form
Class EntidadeContainer {
     private EntidadeX entidade;

     public EntidadeContainer(EntidadeX entidade) {
        this.entidade = entidade;
     }

    private void setEntidade(EntidadeX entidade) {
        this.entidade = entidade;
    }

    public EntidadeX getEntidade() {
        return this.entidade;
    }

   @Action
   public void metodoX() {
       ....
   }

}

Dessa forma, eu poderia manter as entidades sem anotacoes do Genesis, e nao precisaria copiar implementar os metodos da mesma em uma classe Form.

Minha intenção, é mapear a classe da seguinte maneira

SwingBinder binder = new SwingBinder(this, new EntidadeContainer(entidade));
binder.bind();

// E nos componentes swing
JTextField nome = new JTextField();
username.setName("entidade.nome");

JTextField sobrenome = new JTextField();
sobrenome.setName("entidade.sobrenome");

Da mesma forma que podemos bindar Beans via JSF, dentro de um controler. Via get, retornar entidade, e usar o get/set de entidade para as propriedades.
Ficaria fantástico poder mapear dessa forma, pois assim, eu ainda poderia usar o form para as Actions, e deixar minhas telas totalmente MVC.

Me desculpem pelo email meio grande. Realmente estou muito empolgado para usar esse framework tão bem falado, e ainda por cima brasileiro. Tenho certeza que ele vai aumentar e muito a qualidade do nosso software.

Aprecio qualquer ajuda, ou dicas, inclusive de boas praticas, principalmente se este modelo que estou imaginando nao for o mais recomendado/funcional.

Muito obrigado pela atenção!