You should split your portlets in differents classes.
You should avoid putting all your stuff in session, you should use request attributes when possible.
Putting the logic in doView is really against good practice. It will be executed on every refresh including when you trigger another portlet of the same page.
hi, i am interested in the same question too. particularly with myfaces, where we have to use a MyfacesGenericPortlet als the entry point. should i subclass the GenericPortlet?
thanks for any suggestion in advance!