Publishing Engine Programmer's Guide > Arbortext Publishing Engine and its Components > Technical Overview of Arbortext Publishing Engine > Java Servlets and Servlet Containers
  
Java Servlets and Servlet Containers
Java is a popular language for writing programs run by web servers. A servlet is a Java program that is implemented according to the Java Servlet Specification. Many web servers know how to run Java servlets. A Java servlet can be implemented once and then run under many different web servers.
To make a Java servlet available to service an HTTP request, a web server uses a Java servlet container. A servlet container is a program in which Java servlets can run. The servlet container provides an environment that complies with the Java Servlet Specification.
Tomcat is a standalone servlet container supported by the open-source Apache project. Apache or Microsoft IIS must use run Tomcat in a servlet container separate process.