Be careful with this BeanUtil thing, Manu. It's meant to be used in frameworks such as
Struts, where a large degree of flexibility is needed to make it useful for wide variety of applications. If you start using BeanUtils directly in regular code, you may be subjecting yourself and others to the dangers of
unnecessary complexity. (I know, it's about Ruby but the same principles apply in any language, including
Java)
That said, you don't need BeanUtils to make an object that's the same as sourceObject. Java already gives you the ability to create clones (Hint: search for 'clone')