0

I have the following files in C:\Tomcat5.5\common\lib

activation.jar
bonecp-0.7.1.RELEASE.jar
commons-el.jar
ecj-3.7.2.jar
guava-15.0.jar
jasper-compiler.jar
jasper-runtime.jar
jsp-api.jar
jtds-1.3.1.jar
log4j-1.2.17.jar
mail.jar
naming-factory-dbcp.jar
naming-factory.jar
naming-resources.jar
servlet-api.jar
slf4j-api-1.7.5.jar

I have the following in server.xml

<Resource 
auth="Container"
driverClassName="net.sourceforge.jtds.jdbc.Driver"  
type="com.jolbox.bonecp.BoneCPDataSource"
idleMaxAge="240"
idleConnectionTestPeriod="60"
partitionCount="3"
acquireIncrement="1"
maxConnectionsPerPartition="10"
minConnectionsPerPartition="3"
statementsCacheSize="50"
releaseHelperThreads="4"

name="jdbc/MyDatasource"
jdbcUrl="jdbc:jtds:sqlserver://localhost:1433;databaseName=ROWAN-UK;integratedSecurity=true;"
username="rowanadmin" 
password="aeibP4wwZgr"
factory="org.apache.naming.factory.BeanFactory"/> 

and the following in C:\Tomcat5.5\conf\context.xml:

<Context>
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <ResourceLink global="jdbc/MyDatasource" name="jdbc/MyDatasource" type="com.jolbox.bonecp.BoneCPDataSource"/>

    <!-- Default set of monitored resources -->
    <WatchedResource>WEB-INF/web.xml</WatchedResource>

    <!-- Uncomment this to disable session persistence across Tomcat restarts -->
    <!--
    <Manager pathname="" />
    -->

</Context>

I get the following in Tomcat5-stdout.log:

2013-09-22 21:28:52 Commons Daemon procrun stdout initialized SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) Caused by: java.lang.IllegalAccessError: tried to access method com.google.common.collect.MapMaker.makeComputingMap(Lcom/google/common/base/Function;)Ljava/util/concurrent/ConcurrentMap; from class com.jolbox.bonecp.BoneCPDataSource at com.jolbox.bonecp.BoneCPDataSource.(BoneCPDataSource.java:64) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at org.apache.naming.factory.BeanFactory.getObjectInstance(BeanFactory.java:143) at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:140) at javax.naming.spi.NamingManager.getObjectInstance(Unknown Source) at org.apache.naming.NamingContext.lookup(NamingContext.java:793) at org.apache.naming.NamingContext.lookup(NamingContext.java:140) at org.apache.naming.NamingContextBindingsEnumeration.nextElementInternal(NamingContextBindingsEnumeration.java:113) at org.apache.naming.NamingContextBindingsEnumeration.next(NamingContextBindingsEnumeration.java:71) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:137) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:144) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:109) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:81) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at org.apache.catalina.core.StandardServer.start(StandardServer.java:693) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) ... 6 more

van
  • 9,159
  • 19
  • 60
  • 93

1 Answers1

2

See https://stackoverflow.com/a/15656405/2408961

This applies to Play framework, however the solution should be the same. Upgrade to bonecp-0.8.0.RELEASE. (Guava 15 does not seem to work with bonecp-0.7.1.RELEASE)

Community
  • 1
  • 1
Donovan Muller
  • 3,822
  • 3
  • 30
  • 54