Apologies, I was missing a few cassandra jar libs in the tomcat library.
Andy On 28 Jan 2013, at 11:31, Andy Cobley <acob...@computing.dundee.ac.uk> wrote: > I tried to add a CQL3 jdbc resource to tomcat 7 in a context.xml file (in a > Eclipse project) as follows: > > <Resource type="javax.sql.DataSource" > name="jdbc/CF1" > factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" > driverClassName="org.apache.cassandra.cql.jdbc.CassandraDriver" > url="jdbc:cassandra://localhost:9170/Keyspace2" > > /> > > JDBC driver is cassandra-jdbc-1.1.2. When Tomcat (7.035) restarts it throws > a series of errors. Is this known, or expected ? Removing the resource from > contact.xml allows the server to start correctly. > > Andy > > Errors are: > > Jan 28, 2013 11:26:27 AM org.apache.catalina.core.AprLifecycleListener init > INFO: The APR based Apache Tomcat Native library which allows optimal > performance in production environments was not found on the > java.library.path: > .:/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java > Jan 28, 2013 11:26:27 AM org.apache.tomcat.util.digester.SetPropertiesRule > begin > WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting > property 'source' to 'org.eclipse.jst.jee.server:Count' did not find a > matching property. > Jan 28, 2013 11:26:27 AM org.apache.tomcat.util.digester.SetPropertiesRule > begin > WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting > property 'source' to 'org.eclipse.jst.jee.server:mysqlexample' did not find a > matching property. > Jan 28, 2013 11:26:27 AM org.apache.tomcat.util.digester.SetPropertiesRule > begin > WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting > property 'source' to 'org.eclipse.jst.jee.server:testwebservlet' did not find > a matching property. > Jan 28, 2013 11:26:27 AM org.apache.tomcat.util.digester.SetPropertiesRule > begin > WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting > property 'source' to 'org.eclipse.jst.jee.server:Convert' did not find a > matching property. > Jan 28, 2013 11:26:27 AM org.apache.tomcat.util.digester.SetPropertiesRule > begin > WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting > property 'source' to 'org.eclipse.jst.jee.server:Math' did not find a > matching property. > Jan 28, 2013 11:26:27 AM org.apache.coyote.AbstractProtocol init > INFO: Initializing ProtocolHandler ["http-bio-8080"] > Jan 28, 2013 11:26:27 AM org.apache.coyote.AbstractProtocol init > INFO: Initializing ProtocolHandler ["ajp-bio-8009"] > Jan 28, 2013 11:26:27 AM org.apache.catalina.startup.Catalina load > INFO: Initialization processed in 897 ms > Jan 28, 2013 11:26:27 AM org.apache.catalina.core.StandardService > startInternal > INFO: Starting service Catalina > Jan 28, 2013 11:26:27 AM org.apache.catalina.core.StandardEngine startInternal > INFO: Starting Servlet Engine: Apache Tomcat/7.0.35 > Jan 28, 2013 11:26:28 AM org.apache.catalina.core.ContainerBase startInternal > SEVERE: A child container failed during start > java.util.concurrent.ExecutionException: > org.apache.catalina.LifecycleException: Failed to start component > [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/mysqlexample]] > at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222) > at java.util.concurrent.FutureTask.get(FutureTask.java:83) > at > org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) > at > org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > at > org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) > at > org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) > at java.util.concurrent.FutureTask.run(FutureTask.java:138) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:680) > Caused by: org.apache.catalina.LifecycleException: Failed to start component > [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/mysqlexample]] > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) > ... 7 more > Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory > at > org.apache.cassandra.cql.jdbc.CassandraDriver.<clinit>(CassandraDriver.java:52) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:247) > at > org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:246) > at > org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182) > at > org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:702) > at > org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:634) > at > org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:488) > at > org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:144) > at > org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:116) > at > org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:103) > at > org.apache.tomcat.jdbc.pool.DataSourceFactory.createDataSource(DataSourceFactory.java:539) > at > org.apache.tomcat.jdbc.pool.DataSourceFactory.getObjectInstance(DataSourceFactory.java:237) > at > org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:143) > at > javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304) > at org.apache.naming.NamingContext.lookup(NamingContext.java:843) > at org.apache.naming.NamingContext.lookup(NamingContext.java:154) > at org.apache.naming.NamingContext.lookup(NamingContext.java:831) > at org.apache.naming.NamingContext.lookup(NamingContext.java:168) > at > org.apache.catalina.core.NamingContextListener.addResource(NamingContextListener.java:1093) > at > org.apache.catalina.core.NamingContextListener.createNamingContext(NamingContextListener.java:672) > at > org.apache.catalina.core.NamingContextListener.lifecycleEvent(NamingContextListener.java:271) > at > org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) > at > org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) > at > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5179) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > ... 7 more > Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory > at java.net.URLClassLoader$1.run(URLClassLoader.java:202) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:190) > at java.lang.ClassLoader.loadClass(ClassLoader.java:306) > at java.lang.ClassLoader.loadClass(ClassLoader.java:247) > ... 33 more > Jan 28, 2013 11:26:28 AM org.apache.catalina.core.ContainerBase startInternal > SEVERE: A child container failed during start > java.util.concurrent.ExecutionException: > org.apache.catalina.LifecycleException: Failed to start component > [StandardEngine[Catalina].StandardHost[localhost]] > at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222) > at java.util.concurrent.FutureTask.get(FutureTask.java:83) > at > org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) > at > org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > at > org.apache.catalina.core.StandardService.startInternal(StandardService.java:443) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > at > org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > at org.apache.catalina.startup.Catalina.start(Catalina.java:684) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456) > Caused by: org.apache.catalina.LifecycleException: Failed to start component > [StandardEngine[Catalina].StandardHost[localhost]] > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) > at > org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) > at > org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) > at java.util.concurrent.FutureTask.run(FutureTask.java:138) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:680) > Caused by: org.apache.catalina.LifecycleException: A child container failed > during start > at > org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131) > at > org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > ... 7 more > Jan 28, 2013 11:26:28 AM org.apache.catalina.startup.Catalina start > SEVERE: Catalina.start: > org.apache.catalina.LifecycleException: Failed to start component > [StandardServer[8005]] > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) > at org.apache.catalina.startup.Catalina.start(Catalina.java:684) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456) > Caused by: org.apache.catalina.LifecycleException: Failed to start component > [StandardService[Catalina]] > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) > at > org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > ... 7 more > Caused by: org.apache.catalina.LifecycleException: Failed to start component > [StandardEngine[Catalina]] > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) > at > org.apache.catalina.core.StandardService.startInternal(StandardService.java:443) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > ... 9 more > Caused by: org.apache.catalina.LifecycleException: A child container failed > during start > at > org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131) > at > org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > ... 11 more > Jan 28, 2013 11:26:28 AM org.apache.catalina.startup.Catalina start > The University of Dundee is a Scottish Registered Charity, No. SC015096. The University of Dundee is a Scottish Registered Charity, No. SC015096.