As a principle DO NOT change the objects generated by JAXB. As very rightly pointed out by you, these would change with every minor change to the WSDL.
The most accepted process would be to decouple your JAXB objects and the JPA Entities. There would be 2 primary advantages of the same
- You can change your data binding provider at a later point of time if you feel JAXB is too slow or too memory intensive
- You are not tying your JPA code to your DB code. So if tomorrow your WSDL changes or your DB structure changes either of these are not impacted.
To transfer data between the 2 you can use a factory pattern or use a bean mapping framework like