A servlet container is only a "plug in" to a webserver so that you can dynamically react to HTTP requests en write your answer on the HTTP respons.
So that is what you could use Tomcat (or Jetty) for.
But what will you do when you want to access multiple tables in a database and need that access to run within a transaction so that when one update fails , the others are rolled back .... do you really want to write that code your self ? or would you like to have an application server to give you the possibility to declare in an XML descriptor : run method X in a Required transacion context ?
That would be nice , no ? Well that is what EJB are all about.
More info : http://java.sun.com/j2ee/overview.html
Thanks for your reply, and sorry for the slow response.
I am familiar with the issues you present. I have done them in the MS world (coming from C++, VB, and ASP), but I am new to jsp and java, so I trying to figure out components and terminology.
I understood that Tomcat is a container for servlets/beans? Is it an environment for executing Java beans, or have I misunderstood?