Introduction
Servlets are a server side method of using Java to perform common cgi like
functions. Although best suited to quite complex environments they can make
be used for simple applications such as login forms and formmail scripts.
Current Status on Positive Internet Servers
At the moment positive are moving towards standardising on the Tomcat servlet
engine, due to this the guide will lean towards the use of servlets with the
Tomcat engine. The other server in use is JServ, this was originally from
a similar source tree to Tomcat however development of JServ ceased almost
a year ago now and therefore does not support the newer iterations of the
SerlvetAPI and JSP specifications.
Deploying Servlets
Tomcat
You will have, if servlets have been activated, a directory called WEB-INF
inside your public_html directory. Inside there are three points of interest:
WEB-INF/classes All classes belong here. WEB-INF/lib Any jar files you are
intending to use. WEB-INF/web.xml May or may not exist, contains preferences
particular to your website. Normally servlets are callable via this style
of url:
http://yourdomain/servlet/name
So a servlet placed here:
WEB-INF/classes/com/yourdomain/site/Welcome.class
Is callable via:
http://yourdomain/servlet/com.yourdomain.site.Welcome
JServ
You will have, if servlets have been activated, a directory called servlets, inside your home directory. All classes and jar files belong here and apart from that follow the same rules as tomcat above. You will find however, due to legacy reasons, the calling url is of the following style:
http://yourdomain/servlets/name
Jar files placed inside the servlets directory will need to be explicitly added to your properties file which is the closest thing JServ has to web.xml. This will more that likely not be editable by you and you will therefore need to contact support.
Configuring Servlets
Tomcat Only
Tomcat is locally configurable via the web.xml file, the specification of which is available here:
Servlets Specification
One configuration structure is worthy of special mention at the moment, the following structure:
<servlet>
<servlet-name>Cocoon</servlet-name>
<servlet-class>org.apache.cocoon.Cocoon</servlet-class>
<init-param>
<param-name>properties</param-name>
<param-value>.htcocoon-props</param-value>
</init-param>
</servlet>
<servlet-mapping>
<url-pattern>*.xml</url-pattern>
<servlet-name>Cocoon</servlet-name>
</servlet-mapping>
Will need a corresponding entry in the apache configuration:
JkMount /Cocoon/* ajp13
|