Since I don�t know the data you are collecting, I still think most of your session data can be housed in the session.
It sounds like you have organized your wizard so that each screen fills a unique table. Yes?
If it�s easier, create a �container object� for each page of your wizard. Then store each object as it�s very own session variable
Store the large pieces of data in a database table and use the auto generated sessionId as your unique id. Then clean the data when you're done.
When you submit the completed wizard, assemble the data from both your session and the database table and process them as one.
I also would need to know more about what you�re doing to understand why filling multiple tables is an issue. If you are using a transaction, it shouldn�t matter:
Check out the
JDBC forum if you aren�t sure how to do this.