Hi Ravi, I have solved the problem, but it wasn't how I expected. The main culprit in this is Hibernate.
My first issue was trying to get Hibernate to recognize the mySQL JDBC driver. I put that thing in nearly every possible location it could go within my JBoss environment, with no luck. Finally, I played with my Hibernate configuration files. Turns out that, when deployed within JBoss, Hibernate must use a configured DataSource, not a collection of connection properties, such as "driver", "url", etc. Once I did this, jBPM was able to find my mySQL instance. This only seems to apply to external DB's, though --I did not have this problem with the internal Hypersonic DB. Moreover, I did not have this problem when running my test app within the Starter's Kit in Eclipse, even w/ mySQL. I'd be very interested to know why Hibernate couldn't find the driver outside of a DataSource specification. My second issue was simpler -- packaging up jBPM with the correct dependencies. jBPM 3.0.1 and JBoss 4.0.3 use different versions of Hibernate -- 3.0.5 for the former and 3.1 for the latter. This also includes different versions for some of the third-party libraries used by both jBPM and JBoss, such as collections-commons and BSH. My goal was to minimize the number of duplicate libraries within my environment, but, in the end, I simply decided that the versioning issue was going to overrule this. Thus, I packaged jBPM with all libraries that were not included with, or had different versions than, the same libraries deployed with JBoss. It seems that JBoss will allow classloading to occur from within the EAR first, then delegate up the chain, instead of delegating first, as would be standard behavior. I was surprised by this, because, according to the JBoss 4.0 documentation, the "local EAR" loading behavior would require a jboss-deploy.xml file to be included with the EAR, but I did not include one. In any case, this behavior does solve versioning issues. I used an EAR instead of a SAR because EAR's are portable and, to my knowledge, SAR's are not (perhaps I'm behind the times?). Also, I didn't want to package the jBPM libraries with my app, because I want to be able to use jBPM for multiple applications, without having to deploy it separately each time. Of course, using an EAR for jBPM requires EAR-to-EAR visibility, which may not be desireable, as it's not standard J2EE. I haven't figured out that issue yet. Hope this is helpful. Thanks. View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3918159#3918159 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3918159 ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ JBoss-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jboss-user
