[quote=wood]Pessoal,
Gostaria que vocês indicassem literaturas e as experiências de vocês para que eu possa solucionar o seguinte problema:
Uma parte do sistema é em JavaWebStart, e ela tem a função de criar alguns arquivos em XML.
Outra parte do sistema é WEB e deve receber esses arquivos, tratá-los, e persistir em banco.
Quando ocorre alguma atualização no sistema, que modifique algum campo (inclusão, atualição ou deleção) do XML, uma nova versão do SCHEMA é gerado. Mesmo assim, o usuário ainda pode visualizar os arquivos com versões anteriores ao do úlitmo SCHEMA. Dessa forma, todos os SCHEMA são mantidos.
A questão é: como trabalhar com a camada de negócio para haver a menor quantidade de replicação de código? Quando a estrutura do XML for modificada, como indicar para ele os campos de deverão ou não ser validados naquela versão?
No momento estamos usando JWS, JaxB e BeanValidation no desktop, e vamos utilizar EJB 3, BeanValidation e JPA na WEB.
Valeu![/quote]
oi,
tivemos que fazer algo aqui que talvez ajude
o objetivo é ler um XML e setar as propriedades de um POJO (você pode fazer o mesmo para preencher os objetos do JAXB)
para fazer isso criamos uma classe utilitária que usa BeanUtils e instanceof para decidir qual bean deve ser setado, por exemplo
if (obj instaceof MeuBean) {
Class clazz = Class.forName("pacote.MeuBean");
Object obj = clazz.newInstance();
BeanUtils.setProperty(resultObj, propriedade, meubean);
}