Which Java version is required for BTM 1.3?

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Which Java version is required for BTM 1.3?

steveAtSignet
Hi. I'm using BTM 1.3 to set-up an XA Datasource pool on an iSeries (OS/400) that is running Java 1.5.

I keep getting a NoClassDefFoundError for java.sql.Wrapper, which is new in Java 1.6.

Would BTM be trying to use that class? I'm trying to track down what is trying to use java.sql.Wrapper and whether it's BTM or the Datasource class in the IBM Toolbox for Java.

Thanks for any help you can offer.
Reply | Threaded
Open this post in threaded view
|

Re: Which Java version is required for BTM 1.3?

Ludovic Orban
Administrator
Hi,

BTM is designed and compiled against JDK 1.4.2 so it has no dependency on any JDK 1.5 or 1.6 class or newly added method.

Maybe I could help you figure out what is going wrong if you posted the full stack trace you get + your PoolingDataSource config.

Reply | Threaded
Open this post in threaded view
|

Re: Which Java version is required for BTM 1.3?

steveAtSignet
Thanks, Ludovic. I have uploaded the full log from trying to run the application and also my Spring configuration that contains the data source config.

Please do let me know if you spot anything which could explain what's happening and why.

edm_app.log
applicationContext-jta.xml
Reply | Threaded
Open this post in threaded view
|

Re: Which Java version is required for BTM 1.3?

Ludovic Orban
Administrator
Looking at the logs it seems that it is your JDBC driver that depends on JDK 6: the NoClassDefFoundError exception is thrown while BTM looks for a setter in all the class' methods so one of them must take a java.sql.Wrapper as an argument or declares it as return value. This happens in logic internal to the VM so there is very little I can do about this.

I've found these two versions of the AS400JDBCXADataSource online:

http://publib.boulder.ibm.com/iseries/v5r1/ic2924/info/rzahh/javadoc/com/ibm/as400/access/AS400JDBCXADataSource.html

http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/topic/com.ibm.etools.iseries.toolbox.doc/javadoc/com/ibm/as400/access/AS400JDBCXADataSource.html

None of them reference a java.sql.Wrapper object so I wonder if you are using a different version ?

Also, have you simply tried running your app with JDK 6 at least to see what happens ?


Finally a bit unrelated note: you defined URL, username and password driver properties. Those are specific to Oracle (there is no URL property in AS400JDBCXADataSource) and you have to use different ones with AS400JDBCXADataSource. My guess is that you'll need at least user, password and serverName.