Previous Topic: Creating a JNDI ConnectionNext Topic: IBM WebSphere


Apache Tomcat

To create a JNDI connection in Apache Tomcat

  1. Collect the following database-specific information:
  2. Take a backup of server.xml file present in the TOMCAT_HOME\conf directory.
  3. Open the server.xml file present in the TOMCAT_HOME\conf directory.
  4. Use the information that you collected in Step 1 to add an entry in the following format for defining the data source within the <GlobalNamingResources> tag:
    <Resource name="data source_name" auth="Container" type="javax.sql.DataSource" username="user_id" password="password" driverClassName="JDBC_driver_class" url="jdbc_url" maxWait="30000" maxActive="32" maxIdle="4" initialSize="4" timeBetweenEvictionRunsMillis="600000" minEvictableIdleTimeMillis="600000"/>
    
  5. Save and close the server.xml file.
  6. Take a backup of the context.xml file present in the TOMCAT_HOME\conf directory.
  7. Open the context.xml file present in the TOMCAT_HOME\conf directory.
  8. Use the information that you entered in Step 4 to add an entry in the following format for defining the data source within the <Context> tag. The data source name that you specify in this step must be the same as the data source name that you specify in Step 4.
    <ResourceLink global="data source_name" name="data source_name" type="javax.sql.DataSource"/>
    
  9. Save and close the context.xml file.

Configuration changes for Tomcat8 (apache-tomcat-8.0.24) and JDK8 (1.8.0_51)

  1. Creating JNDI connection:

    There are few configuration attribute names that have been updated in tomcat 8. Couple of them are listed in the sample here. Verify your attribute names from tomcat 8 documentation if you are using any others which are not shown in the sample.

    <Resource name="< data source_name >" auth="Container"

    type="javax.sql.DataSource" username="USER_ID" password="PASSWORD"

    driverClassName="JDBC_Driver_Class " url="JDBC_url" maxWaitMillis="30000"

    maxTotal="32" maxIdle="4" initialSize="4"

    timeBetweenEvictionRunsMillis="600000"

    minEvictableIdleTimeMillis="600000"/>

    Note :

    The maxActive configuration option has been renamed to maxTotal

    The maxWait configuration option has been renamed to maxWaitMillis

  2. Make sure you use the latest database jar.
  3. Enabling SSLv3

    Java 8 disables SSLv3 by default. To enable it follow these steps:

    1. Go to “<JRE_HOME>\lib\security” folder used by tomcat.
    2. Open java.security file.
    3. Check if the property “jdk.tls.disabledAlgorithms” has SSLv3, if yes remove the SSLv3 value.