Hey David, I would suggest you create a sample application that will test the drivers, and if the connection is OK, with no application deployed. If you are not a developer, ask your developers on team to help you write a sample application. It can be as simple as a single JSP page.
After you get through the database connection test, you will probably notice that your transaction manager doesn't seem to work - you are using JBossTransactionManagerLookup in your hibernate.cfg.xml file, e.g. <property name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property> Also, don't forget to remove the passwords (when posting to the list) in the server.xml or context.xml file ... whichever you use :)) Let us know how that works! Cheers! On Mon, Apr 1, 2013 at 6:15 PM, <dvosbu...@aol.com> wrote: > > Hello, > > I have been tasked with moving an application from a JBoss application > server to Tomcat 7. The application is using hibernate to establish a > connection pool as I understand it. I've got Tomcat running under the > standard ports and have deployed the application. The SQL Server .jar file > is placed in the catalina_home/lib directory. The problem with getting the > app to run correctly from the logs that I'm reading appears to be that the > database driver isn't loading. I'm new to Tomcat so I might be > misinterpreting this. I'm including a copy of Catalina.out and also my > context.xml, and hibernate.cfg.xml files. Any help would be greatly > appreciated. > > David Vosbury > > Apr 01, 2013 5:10:02 PM 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: > /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib > Apr 01, 2013 5:10:03 PM org.apache.coyote.AbstractProtocol init > INFO: Initializing ProtocolHandler ["http-bio-8080"] > Apr 01, 2013 5:10:03 PM org.apache.coyote.AbstractProtocol init > INFO: Initializing ProtocolHandler ["ajp-bio-8009"] > Apr 01, 2013 5:10:03 PM org.apache.catalina.startup.Catalina load > INFO: Initialization processed in 3249 ms > Apr 01, 2013 5:10:03 PM org.apache.catalina.core.StandardService > startInternal > INFO: Starting service Catalina > Apr 01, 2013 5:10:03 PM org.apache.catalina.core.StandardEngine > startInternal > INFO: Starting Servlet Engine: Apache Tomcat/7.0.37 > Apr 01, 2013 5:10:03 PM org.apache.catalina.startup.HostConfig > deployDirectory > INFO: Deploying web application directory > /tomcat/tomcat1/apache-tomcat-7.0.37/webapps/host-manager > Apr 01, 2013 5:10:05 PM org.apache.catalina.startup.HostConfig > deployDirectory > INFO: Deploying web application directory > /tomcat/tomcat1/apache-tomcat-7.0.37/webapps/SystemsMadeSimple > Apr 01, 2013 5:10:14 PM org.apache.catalina.startup.TaglibUriRule body > INFO: TLD skipped. URI: http://struts.apache.org/tags-bean is already > defined > Apr 01, 2013 5:10:14 PM org.apache.catalina.startup.TaglibUriRule body > INFO: TLD skipped. URI: http://struts.apache.org/tags-html is already > defined > Apr 01, 2013 5:10:15 PM org.apache.catalina.startup.TaglibUriRule body > INFO: TLD skipped. URI: http://struts.apache.org/tags-logic is already > defined > Apr 01, 2013 5:10:15 PM org.apache.catalina.startup.TaglibUriRule body > INFO: TLD skipped. URI: http://struts.apache.org/tags-nested is already > defined > Apr 01, 2013 5:10:15 PM org.apache.catalina.startup.TaglibUriRule body > INFO: TLD skipped. URI: http://struts.apache.org/tags-tiles is already > defined > WebConfig Initialization Started > @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Environment <clinit> > INFO: Hibernate 3.0.5 > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Environment <clinit> > INFO: hibernate.properties not found > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Environment <clinit> > INFO: using CGLIB reflection optimizer > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Environment <clinit> > INFO: using JDK 1.4 java.sql.Timestamp handling > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Configuration configure > INFO: configuring from resource: /hibernate.cfg.xml > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Configuration > getConfigurationInputStream > INFO: Configuration resource: /hibernate.cfg.xml > Apr 01, 2013 5:10:17 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: com/systemsmadesimple/hibernate/SMSuser.hbm.xml > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.SMSuser -> SMSuser > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: com/systemsmadesimple/hibernate/News.hbm.xml > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.News -> news > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: com/systemsmadesimple/hibernate/Staff.hbm.xml > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.Staff -> staff > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: com/systemsmadesimple/hibernate/Contract.hbm.xml > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.Contract -> contract > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: > com/systemsmadesimple/hibernate/Philanthropy.hbm.xml > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.Philanthropy -> > philanthropy > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: com/systemsmadesimple/hibernate/Customer.hbm.xml > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.Customer -> customer > Apr 01, 2013 5:10:18 PM org.hibernate.cfg.Configuration addResource > INFO: Mapping resource: com/systemsmadesimple/hibernate/Service.hbm.xml > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.HbmBinder > bindRootPersistentClassCommonValues > INFO: Mapping class: com.systemsmadesimple.hibernate.Service -> service > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.Configuration doConfigure > INFO: Configured SessionFactory: null > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.Configuration secondPassCompile > INFO: processing extends queue > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.Configuration secondPassCompile > INFO: processing collection mappings > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.Configuration secondPassCompile > INFO: processing association property references > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.Configuration secondPassCompile > INFO: processing foreign key constraints > Apr 01, 2013 5:10:19 PM org.hibernate.util.NamingHelper getInitialContext > INFO: JNDI InitialContext properties:{} > Apr 01, 2013 5:10:19 PM > org.hibernate.connection.DatasourceConnectionProvider configure > INFO: Using datasource: java:comp/env/jdbc/smswebdb > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > WARNING: Could not obtain connection metadata > org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver > of class '' for connect URL 'jdbc:sqlserver://10.2.152.11:1433 > ;databaseName=SMSwebDB;SelectMethod=Cursor;' > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1452) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) > at > org.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:59) > at > org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:72) > at > org.hibernate.cfg.Configuration.buildSettings(Configuration.java:1463) > at > org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1004) > at > com.systemsmadesimple.hibernate.HibernateUtil.<clinit>(HibernateUtil.java:43) > at > com.systemsmadesimple.hibernate.DatabaseManager.getDbInfo(DatabaseManager.java:23) > at > com.systemsmadesimple.struts.WebConfig.initialize(WebConfig.java:40) > at > com.systemsmadesimple.ServletInitializer.init(ServletInitializer.java:92) > at javax.servlet.GenericServlet.init(GenericServlet.java:160) > at > org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1280) > at > org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1193) > at > org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1088) > at > org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5033) > at > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5317) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) > at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) > at > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633) > at > org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1114) > at > org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1673) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > at > java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) > at java.util.concurrent.FutureTask.run(FutureTask.java:166) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:722) > Caused by: java.sql.SQLException: No suitable driver > at java.sql.DriverManager.getDriver(DriverManager.java:289) > at > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437) > ... 28 more > > Apr 01, 2013 5:10:19 PM org.hibernate.dialect.Dialect <init> > INFO: Using dialect: org.hibernate.dialect.SQLServerDialect > Apr 01, 2013 5:10:19 PM > org.hibernate.transaction.TransactionFactoryFactory buildTransactionFactory > INFO: Transaction strategy: org.hibernate.transaction.JTATransactionFactory > Apr 01, 2013 5:10:19 PM org.hibernate.util.NamingHelper getInitialContext > INFO: JNDI InitialContext properties:{} > Apr 01, 2013 5:10:19 PM > org.hibernate.transaction.TransactionManagerLookupFactory > getTransactionManagerLookup > INFO: instantiating TransactionManagerLookup: > org.hibernate.transaction.JBossTransactionManagerLookup > Apr 01, 2013 5:10:19 PM > org.hibernate.transaction.TransactionManagerLookupFactory > getTransactionManagerLookup > INFO: instantiated TransactionManagerLookup > Apr 01, 2013 5:10:19 PM > org.hibernate.transaction.TransactionManagerLookupFactory > getTransactionManagerLookup > INFO: instantiating TransactionManagerLookup: > org.hibernate.transaction.JBossTransactionManagerLookup > Apr 01, 2013 5:10:19 PM > org.hibernate.transaction.TransactionManagerLookupFactory > getTransactionManagerLookup > INFO: instantiated TransactionManagerLookup > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Automatic flush during beforeCompletion(): disabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Automatic session close at end of transaction: disabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Scrollable result sets: disabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: JDBC3 getGeneratedKeys(): disabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Connection release mode: null > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Default schema: SMSWebDB > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Default batch fetch size: 1 > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Generate SQL with comments: disabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Order SQL updates by primary key: disabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory > createQueryTranslatorFactory > INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory > Apr 01, 2013 5:10:19 PM org.hibernate.hql.ast.ASTQueryTranslatorFactory > <init> > INFO: Using ASTQueryTranslatorFactory > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Query language substitutions: {} > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Second-level cache: enabled > Apr 01, 2013 5:10:19 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Query cache: enabled > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory > createCacheProvider > INFO: Cache provider: org.hibernate.cache.EhCacheProvider > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Optimize cache for minimal puts: disabled > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Structured second-level cache entries: disabled > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory > createQueryCacheFactory > INFO: Query cache factory: org.hibernate.cache.StandardQueryCacheFactory > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Statistics: disabled > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Deleted entity synthetic identifier rollback: disabled > Apr 01, 2013 5:10:20 PM org.hibernate.cfg.SettingsFactory buildSettings > INFO: Default entity-mode: pojo > NewsServlet started > Apr 01, 2013 5:10:20 PM org.apache.catalina.startup.HostConfig > deployDirectory > INFO: Deploying web application directory > /tomcat/tomcat1/apache-tomcat-7.0.37/webapps/manager > Apr 01, 2013 5:10:20 PM org.apache.catalina.startup.HostConfig > deployDirectory > INFO: Deploying web application directory > /tomcat/tomcat1/apache-tomcat-7.0.37/webapps/ROOT > Apr 01, 2013 5:10:21 PM org.apache.coyote.AbstractProtocol start > INFO: Starting ProtocolHandler ["http-bio-8080"] > Apr 01, 2013 5:10:21 PM org.apache.coyote.AbstractProtocol start > INFO: Starting ProtocolHandler ["ajp-bio-8009"] > Apr 01, 2013 5:10:21 PM org.apache.catalina.startup.Catalina start > INFO: Server startup in 18035 ms > HOME >> reinitializing data > Apr 01, 2013 5:11:30 PM org.apache.jasper.compiler.TldLocationsCache > tldScanJar > INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable > debug logging for this logger for a complete list of JARs that were scanned > but no TLDs were found in them. Skipping unneeded JARs during scanning can > improve star > tup time and JSP compilation time. > HOME >> reinitializing data > > Contents of context.xml > > <?xml version='1.0' encoding='utf-8'?> > <!-- > Licensed to the Apache Software Foundation (ASF) under one or more > contributor license agreements. See the NOTICE file distributed with > this work for additional information regarding copyright ownership. > The ASF licenses this file to You under the Apache License, Version 2.0 > (the "License"); you may not use this file except in compliance with > the License. You may obtain a copy of the License at > > http://www.apache.org/licenses/LICENSE-2.0 > > Unless required by applicable law or agreed to in writing, software > distributed under the License is distributed on an "AS IS" BASIS, > WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. > See the License for the specific language governing permissions and > limitations under the License. > --> > <!-- The contents of this file will be loaded for each web application --> > <Context> > > <!-- Default set of monitored resources --> > <WatchedResource>WEB-INF/web.xml</WatchedResource> > > <!-- Uncomment this to disable session persistence across Tomcat > restarts --> > <!-- > <Manager pathname="" /> > --> > > <!-- Uncomment this to enable Comet connection tacking (provides events > on session expiration as well as webapp lifecycle) --> > <!-- > <Valve > className="org.apache.catalina.valves.CometConnectionManagerValve" /> > --> > <Resource name="jdbc/smswebdb" > auth="Container" > driverclassname="com.microsoft.sqlserver.jdbc.SQLServerDriver" > maxactive="100" > maxidle="30" > maxwait="10000" > username="SMSWEB_user" > password="SMSWP*D#1AHqX1" > type="javax.sql.DataSource" > url="jdbc:sqlserver://10.2.152.11:1433 > ;databaseName=SMSwebDB;SelectMethod=Cursor;"> > </Resource> > > <!-- <resource-ref> > <description> > Resource reference to a factory for java.sql.Connection > instances that may be used for talking to the database > that is configured in context.xml. > </description> > <res-ref-name>jdbc/smswebdb</res-ref-name> > <res-type>javax.sql.DataSource</res-type> > <res-auth>Container</res-auth> > </resource-ref> > --> > </Context> > > <?xml version='1.0' encoding='UTF-8'?> > <!DOCTYPE hibernate-configuration PUBLIC > "-//Hibernate/Hibernate Configuration DTD 3.0//EN" > " > http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> > > <!-- Generated by MyEclipse Hibernate Tools. --> > <hibernate-configuration> > > <session-factory> > <property > name="connection.datasource">java:comp/env/jdbc/smswebdb</property> > <property name="default_schema">SMSWebDB</property> > <property > name="dialect">org.hibernate.dialect.SQLServerDialect</property> > <property > name="hibernate.transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property> > <property > name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property> > > <property name="hibernate.show_sql">false</property> > > <!-- Configure L2 cache --> > <property > name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property> > <!-- <property > name="hibernate.cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property> > --> > <property > name="hibernate.cache.use_second_level_cache">true</property> > <property > name="hibernate.cache.use_query_cache">true</property> > > <mapping > resource="com/systemsmadesimple/hibernate/SMSuser.hbm.xml" /> > <mapping > resource="com/systemsmadesimple/hibernate/News.hbm.xml" /> > <mapping > resource="com/systemsmadesimple/hibernate/Staff.hbm.xml" /> > <mapping > resource="com/systemsmadesimple/hibernate/Contract.hbm.xml" /> > <mapping > resource="com/systemsmadesimple/hibernate/Philanthropy.hbm.xml" /> > <mapping > resource="com/systemsmadesimple/hibernate/Customer.hbm.xml" /> > <mapping > resource="com/systemsmadesimple/hibernate/Service.hbm.xml" /> > > > </session-factory> > > </hibernate-configuration> > > > >