-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 
Author Message
 Post subject: Porting app from TC5.0/J1.4 to TC6.0/J1.6 - c3p0, Hibernate
PostPosted: Tue Apr 27, 2010 12:56 pm 
Newbie

Joined: Tue Apr 27, 2010 11:31 am
Posts: 1
I am trying to migrate an in-house app that runs in production on Tomcat 5.0.28 and Java 1.4.2 to Tomcat 6.0.26 and Java 1.6.0_20. Hibernate 2.1b6 came with the app's WAR file and is in …<app>/WEB-INF/lib. The app also contains Struts 1.3.10, Axis 1.4 and a number of other things. The app uses c3p0 but it is not packaged with the app; on the production server it lives at /var/jakarta-tomcat-5.0.28/common/lib/c3p0-0.9.1.2.jar.

My prototype target server is a Gentoo Linux instance and the above Tomcat/Java arrangement is in place and working.

The app runs against a DB2 database; I've got a username, password, server FQDN, port number, and database name to point the app to. I have the proper version of DB2 JDBC driver and associated license files for the DB2 version/fixpack involved; they are symlinked within /usr/share/tomcat-6/lib as db2jcc.jar, db2jcc_license_cisuz.jar, and db2jcc_license_cu.jar.

The app uses c3p0 but it is not packaged with the app; on the production server it lives at /var/jakarta-tomcat-5.0.28/common/lib/c3p0-0.9.1.2.jar. This is the same version that is installed by Gentoo's package manager at the moment but it puts the jar at /usr/share/c3p0/lib/c3p0.jar and performs no further integration; on my prototype target server I've made a symlink from /usr/share/tomcat-6/lib/c3p0.jar to there.

The app's original platform sets up its datasource in /var/jakarta-tomcat-5.0.28/conf/vhosts.xml, which I'll abbreviate/redact as follows:
Code:
   <Host name="thisapp.thiscompany.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
       <Context debug="0" docBase="${catalina.home}/webapps/thisapp" path="">
           <Resource
               name="jdbc/POOL"
               description="DB connection pool for ELMS"
               auth="Container"
               type="com.mchange.v2.c3p0.ComboPooledDataSource"
           />
           <ResourceParams name="jdbc/POOL">
               <parameter>
                   <name>factory</name>
                   <value>org.apache.naming.factory.BeanFactory</value>
               </parameter>
               <parameter>
                   <name>driverClass</name>
                   <value>com.ibm.db2.jcc.DB2Driver</value>
               </parameter>
               <parameter>
                   <name>jdbcUrl</name>
                   <value>jdbc:db2://dbserver.thiscompany.com:50000/PROD</value>
               </parameter>
               .
               .
               .
               <parameter>
                   <name>maxPoolSize</name>
                   <value>23</value>
               </parameter>
               <parameter>
                   <name>maxStatements</name>
                   <value>0</value>
               </parameter>
               .
               .
               .
          </ResourceParams>
      </Context>
   </Host>


Vhosts.xml appears to be getting invoked as follows near the top of /var/jakarta-tomcat-5.0.28/conf/server.xml:

Code:
   <!DOCTYPE web-app[
       <!ENTITY vhosts SYSTEM "vhosts.xml">
   ]>

.
Also on the original platform, hibernate.properties has but one uncommented line:
Code:
elms.config.THISAPP=thisapp/resource/hibernate-THISAPP.xml


.../webapps/thisapp/WEB-INF/classes/thisapp/resource/hibernate-THISAPP.xml (redacted) can be seen at http://pastebin.com/RJ7QyTJv .

So I've been looking at docs like http://community.jboss.org/wiki/HowToconfiguretheC3P0connectionpool and http://community.jboss.org/wiki/UsingHibernatewithTomcat and I'm trying to find the "industrially correct" way to configure this datasource. I can start the app and get to its logon screen, but I get exceptions at logon complaining largely about Hibernate.

My questions:
1. Can someone give me an idea how the datasource config info ought to be spread amongst app-specific files (e.g., web.xml, context.xml), c3p0 config, and Hibernate config?
2. Am I OK going forward with Hibernate 2.1b6 as packaged with the app?
3. Noting line 67 in hibernate-THISAPP.xml (redacted) at http://pastebin.com/RJ7QyTJv , does the presence of this parameter suggests that Hibernate's connection pooler was made active in addition to c3p0?
4. Regarding custom class described at lines 18-22 in hibernate-THISAPP.xml: why would a custom class be necessary to "taylor [sic] JDBC connection settings?"

Thanks!


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.