« Site Update | Main | Matthew's First Story »

JBoss - From NT to Linux

Today's adventure was moving my application that was running on JBoss/NT over to running on JBoss/Linux. This would have been fairly trivial, except that I forgot that I was using SQL Server on NT whereas I was running Oracle on Linux. But other than some problems with the JDBC driver from Oracle, it went pretty smoothly.

1. Downloaded and installed JBoss - only gotcha was to change JAVA_HOME from a JRE to a JDK, as it had been a JRE to get Oracle working. The JDK we chose was actually the one that came with WL. (Then I ran into some issues making sure Oracle was running, but that had nothing to do with JBoss)

2. Then I copied over the JMS configuration file - jms/jbossmq-destinations-service.xml.

3. Then I created a jmetro-ds.xml, using the Oracle sample as the basis.

4. Then it was time to try deploying the jmetro.jar (the EJBs for the application), we got lots of CNFE errors for OracleDriver. So, I downloaded the driver from Oracle (which turned out to be a mistake). But then I realized I needed to change the jbosscmp-jdbc.xml file (embedded in the jmetro.jar) - and that we wanted the Oracle build, not a SQLServer build. So I changed the jbosscmp-jdbc.xml to have:

java:/JMetroJDBCDataSource
Oracle9i ...
and then created a new jmetro release, using the oracle build configuration.

5. But I ran into a problem deep inside the Oracle driver:
16:48:40,249 ERROR [LogInterceptor] TransactionRolledbackLocalException in method: public abstract com.actiontech.jmetro.server.ejb.Action com.actiontech.jmetro.server.ejb.ActionHome.create(com.actiontech.jmetro.data.ActionData) throws javax.ejb.CreateException, causedBy:
java.lang.ClassCastException
at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:2790)
at
So, I changed from the Oracle driver to the WebLogic driver. And it worked!

Although there is still a warning in the log related to the JMS configuration - messages like the following for each of our queues:
14:57:27,774 WARN [JMSContainerInvoker] Could not find the queue destination-jndi-name=JMetroQueryQueue

Comments

Hi

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)