Table of Contents
Tomcat connectors provide the external interface (over HTTP or HTTPS) to Tomcat clients. There are two kinds of connectors - that that implement an HTTP stack of their owner (called HTTP connectors) and those (called web server connectors) that tie Tomcat to an external web server like Apache (or IIS) or, in this case, to Enhydra Director.
In Enhydra5.1.xx and prior version, every Enhydra Multiserver application (configured to handle request from Enhydra Director) have separate connection (on different port) to Enhydra Director.
Unlike Enhydra5.1.xx, Tomcat Connector, for Enhydra Director use only one connection (port) for all applications hosted on that instance of server.
To use Enhydra Director with Tomcat 5.5.xx You first need to put "tomcat5.5-director.jar" on Tomcat classpath:
$CATALINA_HOME/server/lib
and then specify and configure connector (tomcat5.5-director connector) to use with Enhydra Director.
Configuration parameters of Enhydra Director Connector are placed in Tomcats server.xml file:
$CATALINA_HOME/conf/server.xml)
in <service> section:
<Server ...> ... <Service name="Catalina"> ... <Connector protocol="org.enhydra.servlet.connectionMethods.EnhydraDirector.DirectorProtocol" port="9003" numThreads = "200" queueSize = "400" clientTimeout = "30" threadTimeout = "300" bindAddress = "(All Interfaces)" authKey = "(Unauthenticated)" sessionAffinity = "true" scheme="http" acceptCount = "50" tcpNoDelay = "true" enableLookups = "false" redirectPort = "8443" URIEncoding = "ISO-8859-1" useBodyEncodingForURI = "true" /> ... </Service> ... </Server>
Configuration parameters are:
1.Class that implements Director Protocol.
protocol="org.enhydra.servlet.connectionMethods.EnhydraDirector.DirectorProtocol"
2.This instructs the Enhydra Director Connector to directly listen for requests (Enhydra Director Protocol) on the specified port.
port = <port>
3.The number of handler threads my be specified with:
numThreads = <num> (optional)
4.The number of requests to queue (after accept, before processing) may be specified with:
queueSize = <num> (optional)
5.The idle timeout period for a client connection, in seconds. This is the amount of time to block without activity.
clientTimeout = <num> (optional)
6.The idle timeout period for a handler thread, in seconds. Shorter timeouts minimize the number of threads (memory) while slowing response time for bursts of activity.
threadTimeout = <num> (optional)
7.IP address of Enhydra Director host that is alowed to bind to this server instance.
bindAddress = <ipAdress> | "(All Interfaces)" (optional)
8.The authKey .
authKey = <authKey> | "(Unauthenticated)" (optional)
9.The Request Scheme is parameter name of the protocol you wish to have returned by calls to request.getScheme().
scheme = <scheme> (optional)
10.The maximum queue length for incoming connection requests when all possible request processing threads are in use.
acceptCount = <num> (optional)
11.If set to true, the tcpNoDelay option will be set on the server socket, which improves performance under most circumstances.
tcpNoDelay = <true> (optional)
12.Set to true if you want calls to request.getRemoteHost() to perform DNS lookups in order to return the actual host name of the remote client. Set to false to skip the DNS lookup and return the IP address in String form instead (thereby improving performance). By default, DNS lookups are disabled.
enableLookups = <false> (optional)
13.If this Connector is supporting non-SSL requests, and a request is received for which a matching <security-constraint> requires SSL transport, Catalina will automatically redirect the request to the port number specified here.
redirectPort = <num> (optional)
14.This specifies the character encoding used to decode the URI bytes.If not specified, ISO-8859-1 will be used.
URIEncoding = <URIEncoding> (optional)
15.This specifies if the encoding specified in contentType should be used for URI query parameters, instead of using the URIEncoding.
useBodyEncodingForURI = <false> (optional)
To use Enhydra with Enhydra Director put "tomcat5.5-director.jar" to:
{Enhydra-Install-Dir}/multiserver/server/lib
Since Enhydra v6.2.x distributions uses Tomcat5.5.x as servlet container, all details related to connector configurations in server.xml:
{Enhydra-Install-Dir}/multiserver/conf/server.xml
file are same as those described in previous section (Configuring Tomcat.5.5.x to use with Enhydra Director).
To use Enhydra with Enhydra Director put "tomcat5.5-director.jar" to:
{Enhydra-Install-Dir}/multiserver/lib/catalina/server/lib
Since Enhydra Enterprise 6.5.x distributions uses JOnAS - Tomcat-5.5.x as servlet container, all details related to connector configurations in server.xml:
{Enhydra-Install-Dir}/multiserver/conf/server.xml
file are same as those described in previous section (Configuring Tomcat.5.5.x to use with Enhydra Director).