Edit: Lembrando de outro projeto que fiz parecido com o teu problema, mas usando Beans de terceiros, preferi usar o )]BeanUtils do Spring Framework, que pelo menos tem uma opção a mais de ignorar algumas propriedades.
E falando em clones, talvez você encontre o problema de Deep Cloning.
A minha solução de deep cloning foi usar o copyProperties do Spring e clonagem via construtor (Filho2 filho2 = new Filho2(filho1), para cada nó da árvore clonada.
R
rodrigomarcelo
Bruno Laturner:
Filho2 filho2 = new Filho2();
filho2.setNome(filho1.getNome());
Na verdade era justamente isto que estou querendo evitar: copiar atributo por atributo... pois serão dezenas...
Precisaria de algo que realmente fizesse um clone, mas trocando a classe...
R
rodrigomarcelo
Deu certo!
Li um pouco sobre JSON, fiz uns testes… e acabei criando uma maneira de fazer isto… obviamente que só funciona porque no meu caso os objetos serão identicos… só tenho q fazer isto porque eles tem necessariamente que estar em tabelas separadas…
Editei a minha resposta acima. Eu usaria o copyProperties do Spring.
O teu método que vc postou é clonagem via serialização. O Commons Lang tem um SerializationUtils que faz isso. Mas não resolve o teu problema com classes diferentes.