It sounds like you're letting the container autogenerate the schema from your entities so you don't have to do get down and dirty creating your own ORM (why not?) If so, there's a nifty tool at the Apache project called DdlUtils that you might find useful.
First backup the old database, then redeploy your updated app to generate an empty database with the new schema. Using DdlUtils, you can then connect to the two databases and have it generate the SQL necessary to migrate your old database to the new schema, preserving your data.
It works like a charm if you're just adding or deleting tables or columns. I don't know how well it works when you do something like change column names. You may need to hand edit the sql in that case.