To get the defining class:

http://groups.google.com/groups?selm=T3jO7.115605%248a.83958584%40news1.rsm1.occa.home.com

The Singleton idiom, double-checked locking, etc.:

http://www-106.ibm.com/developerworks/java/library/j-dcl.html

JSP introduction:

http://java.sun.com/webservice/docs/ea1/tutorial/doc/JSPIntro.html

JSP implicit objects:

http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/JSPIntro7.html

On ThreadLocal:

http://www-106.ibm.com/developerworks/java/library/j-threads3.html

(Think there is a similar, but better, article on an IBM site.)

Why constructors are not inherited:

Where to get j2ee.jar:

http://java.sun.com/j2ee/1.4/download.html; get the Sun Java System Application Server Platform. (Also get the Platform API Documentation if you wants the docs.)

HOW TO SET CONFIG OPTIONS:

SET (web.xml, for the application):

foo hello ...

GET (.jsps):

application.getInitParameter("foo");

GET (HttpServlet):

getServletContext().getInitParameter("foo"); // not tested, actually

SET (web.xml, for the servlet):

foo hello

GET (.jsps):

(Not possible--?)

GET (HttpServlet):

getServletConfig().getInitParameter("foo");

SET (ServletContext.setAttribute()):

context.setAttribute("foo", "Hello");

GET (.jsps):

application.getAttribute("foo");

GET (HttpServlet):

getServletConfig().getAttribute("foo");