org.logicalcobwebs.proxool.configuration
Class ServletConfigurator

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by org.logicalcobwebs.proxool.configuration.ServletConfigurator
All Implemented Interfaces:
java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

public class ServletConfigurator
extends javax.servlet.http.HttpServlet

Allows you to configure Proxool using a servlet. There are three different ways: The init parameters can either directly configure Proxool (in a similar fashion to the PropertyConfigurator) or they can point to separate XML or property files. For example:

1. XML file delegates to JAXPConfigurator passing in the filename. If the filename is not absolute then it is prepended with the application directory.

    <servlet>
        <servlet-name>ServletConfigurator</servlet-name>
        <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
        <init-param>
            <param-name>xmlFile</param-name>
            <param-value>WEB-INF/proxool.xml</param-value>
        </init-param>
    </servlet>
 
2. Property file delegates to PropertyConfigurator passing in the filename. If the filename is not absolute then it is prepended with the application directory.
    <servlet>
        <servlet-name>ServletConfigurator</servlet-name>
        <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
        <init-param>
            <param-name>propertyFile</param-name>
            <param-value>WEB-INF/proxool.properties</param-value>
        </init-param>
    </servlet>
 
3. Init parameters delegates to PropertyConfigurator by passing in a new Properties object based on the servlet's init parameters.
    <servlet>
        <servlet-name>ServletConfigurator</servlet-name>
        <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
        <init-param>
            <param-name>jdbc-0.proxool.alias</param-name>
            <param-value>test</param-value>
        </init-param>
        <init-param>
            <param-name>jdbc-0.proxool.driver-url</param-name>
            <param-value>jdbc:hsqldb:.</param-value>
        </init-param>
        <init-param>
            <param-name>jdbc-0.proxool.driver-class</param-name>
            <param-value>org.hsqldb.jdbcDriver</param-value>
        </init-param>
    </servlet>
 

It will also automatically shutdown Proxool. See destroy().

Since:
Proxool 0.7
Version:
$Revision: 1.7 $, $Date: 2006/01/18 14:39:58 $
Author:
bill, $Author: billhorsman $ (current maintainer)
See Also:
Serialized Form

Constructor Summary
ServletConfigurator()
           
 
Method Summary
 void destroy()
          Shuts down Proxool by removing all connection pools.
 void init(javax.servlet.ServletConfig servletConfig)
           
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service, service
 
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServletConfigurator

public ServletConfigurator()
Method Detail

init

public void init(javax.servlet.ServletConfig servletConfig)
          throws javax.servlet.ServletException
Specified by:
init in interface javax.servlet.Servlet
Overrides:
init in class javax.servlet.GenericServlet
Throws:
javax.servlet.ServletException

destroy

public void destroy()
Shuts down Proxool by removing all connection pools. If you want to disable this behaviour then use:
 <init-param>
   <param-name>autoShutdown</param-name>
   <param-value>false</param-value>
 </init-param>
 

Specified by:
destroy in interface javax.servlet.Servlet
Overrides:
destroy in class javax.servlet.GenericServlet