Chapter 11. Servlet Collaboration
Servlets running together in the same server have several ways to communicate with one another. There are two main styles of servlet collaboration:
- Sharing information
This involves two or more servlets sharing state or resources. For example, a set of servlets managing an online store could share the store’s product inventory count or share a database connection. Session tracking (see Chapter 7) is a special case of sharing information.
- Sharing control
This involves two or more servlets sharing control of the request. For example, one servlet could receive the request but let another servlet handle some or all of the request-handling responsibilities.
In the past (before Servlet API 2.1) we would have listed another
style of collaboration: direct
manipulation
. With this style of collaboration, a
servlet could obtain a direct reference to another through the
getServlet( )
method and invoke methods on the
other servlet. This style of collaboration is no longer supported;
the getServlet( )
method has been deprecated and
defined to return null
for API 2.1 and later. The
reason: a servlet may be destroyed by the web server at any time, so
nothing but the server should hold a direct reference to a servlet.
Everything that could be done with getServlet( )
can be accomplished better and safer using the alternatives
we’ll learn about in this chapter.
Sharing Information
Oftentimes servlets cooperate by sharing some information. The information may be state ...
Get Java Servlet Programming, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.