Business logic, if you're not using EJBs, should not be in any servlet class. It should be able to run without the servlet container even being there (at least as far as its concerned). Servlet classes (and
Struts action beans) are used for presentation support/flow of control for your web application. One good litmus (sp?)
test, your business logic code should not import javax.servlet or javax.servlet.http at all. I would also recommend the Business Delegate design
pattern, in case you ever wish to switch to EJBs in the future. This pattern provides a simple solution for migration to EJBs. Check it out at Sun's
J2EE Patterns Catalog.