| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/01/2007 13:51:09
|
RicardoLuis
JavaEvangelist
Membro desde: 12/08/2003 14:47:56
Mensagens: 393
Localização: Cuiabá / MT
Offline
|
Olá a todos...
Estou com o seguinte problema: desejo buscar os dados de uma JTable e setar cada uma das Linhas em um JavaBean e, logo após, adicionar tais JavaBeans a um List.
O problema é que tudo isto deve ser feito de maneira genérica, servindo para qualquer tipo de tabela. Aqui já conseguimos fazer o bind de TextFields e TextAreas sem problemas, utilizando reflection.
Alguém tem alguma sugestão de como fazer o bind de uma linha da JTable a um JavaBean de forma genérica, de modo a funcionar com qualquer JTable e com qualquer JavaBean?
Obs.: Já pesquisamos o Genesis, porém ele não atende nossas necessidades, devido ao framework de validação que construímos aqui.
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/01/2007 20:03:15
|
mister__m
Virtual Machine Man
![[Avatar]](/images/avatar/89b9c689a57b82e59074c6ba09aa394d.jpg)
Membro desde: 18/03/2005 16:13:17
Mensagens: 736
Offline
|
RicardoLuis wrote:Obs.: Já pesquisamos o Genesis, porém ele não atende nossas necessidades, devido ao framework de validação que construímos aqui.
O que exatamente te impede de usar o genesis com o seu framework de validação?
|
Michael Nascimento Santos, aka Mister M
Summa Technologies do Brasil - http://www.summa-tech.com/
genesis: Uma nova forma de desenvolver aplicações - https://genesis.dev.java.net/
ThinNB: Suporte a Thinlet no NetBeans - https://thinnb.dev.java.net/
Líder da JSR-310 - Date and Time API
Expert Group Member das JSRs 207 (PD4J), 250 (Common Annotations), 270 (Java 2 SE 6.0), 296 (Swing Framework) e 303 (Bean Validation)
SouJava: Fortalecendo a comunidade Java brasileira - https://soujava.dev.java.net/ https://www.soujava.org.br/
JSR Community @ java.net - http://community.java.net/jsr
Blogs - http://blog.michaelnascimento.com.br/ http://today.java.net/pub/au/80
Twitter - @mr__m |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/01/2007 11:03:35
|
RicardoLuis
JavaEvangelist
Membro desde: 12/08/2003 14:47:56
Mensagens: 393
Localização: Cuiabá / MT
Offline
|
É que a situação é a seguinte: nós desenvolvemos um mini-framework de segurança para a aplicação e esta validação é dada campo a campo do formulário, sendo que o usuário possui tres níveis de permissão:
1 - Visualizar e editar o conteúdo do campo;
2 - Somente visualizar o conteúdo do campo;
3 - Nem visualizar o conteúdo do campo.
E pelo que eu li sobre o genesis, ele atualiza o estado do meu bean automaticamente com o estado da tela, porém após validar o sistema, o conteúdo do formulário em alguns campos é apagado e quando o genesis atualizar o bean, o dados serão perdidos, desta forma não é possível utilizá-lo.
Estou correto em relação ao genesis neste quesito?
Pelo menos foi isso que eu entendi pela leitura que fiz da documentação.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/01/2007 16:16:20
|
mister__m
Virtual Machine Man
![[Avatar]](/images/avatar/89b9c689a57b82e59074c6ba09aa394d.jpg)
Membro desde: 18/03/2005 16:13:17
Mensagens: 736
Offline
|
RicardoLuis wrote:É que a situação é a seguinte: nós desenvolvemos um mini-framework de segurança para a aplicação e esta validação é dada campo a campo do formulário, sendo que o usuário possui tres níveis de permissão:
1 - Visualizar e editar o conteúdo do campo;
2 - Somente visualizar o conteúdo do campo;
3 - Nem visualizar o conteúdo do campo.
E pelo que eu li sobre o genesis, ele atualiza o estado do meu bean automaticamente com o estado da tela, porém após validar o sistema, o conteúdo do formulário em alguns campos é apagado e quando o genesis atualizar o bean, o dados serão perdidos, desta forma não é possível utilizá-lo.
Estou correto em relação ao genesis neste quesito?
Pelo que eu entendi até aqui, na verdade, não. O genesis apenas mantém a sincronia dos campos para os quais é feito o binding. Entendo que para os campos desabilitados (caso 2), o conteúdo ficará visível. Existem várias maneiras de fazer com que tanto o genesis como o framework de segurança funcionem corretamente:
1. No caso 3, remova o componente da interface ou mude o seu name. Dessa forma, o genesis não o encontrará e não haverá sincronia entre eles.
2. Customize o binding para ignorar os componentes que não devem ser habilitados. Basta para isso prover uma implementação de LookupStrategy que despreze os componentes não relevantes para o usuário atual. A documentação de LookupStrategy explica como fazer isso.
3. Um pouco mais difícil, mas também mais interessante a longo prazo seria expor as regras de segurança através do FormMetadata do seu form, que é o mecanismo do próprio genesis para habilitar/desabilitar e tornar visível/invisível determinado widget.
|
Michael Nascimento Santos, aka Mister M
Summa Technologies do Brasil - http://www.summa-tech.com/
genesis: Uma nova forma de desenvolver aplicações - https://genesis.dev.java.net/
ThinNB: Suporte a Thinlet no NetBeans - https://thinnb.dev.java.net/
Líder da JSR-310 - Date and Time API
Expert Group Member das JSRs 207 (PD4J), 250 (Common Annotations), 270 (Java 2 SE 6.0), 296 (Swing Framework) e 303 (Bean Validation)
SouJava: Fortalecendo a comunidade Java brasileira - https://soujava.dev.java.net/ https://www.soujava.org.br/
JSR Community @ java.net - http://community.java.net/jsr
Blogs - http://blog.michaelnascimento.com.br/ http://today.java.net/pub/au/80
Twitter - @mr__m |
|
|
 |
|
|
|
|