This content has been marked as final. Show 1 reply
The classloader hierarchy in WLS looks like this (arrows denote inheritance direction):
Java bootstrap classloader <- Java CLASSPATH classloader <- WLS $DOMAIN_HOME/lib classloader <- Application (e.g., EAR) classloader <- web app classloader <- single JSP classloader
The Connection Manager is loaded by the web app classloader while the EJBs are loaded by the application classloader so the EJBs have no visibility to the classes loaded by the child (web app) classloader.
The simplest fix might be to move the Connection Manager jar file to the EAR file's APP-INF/lib directory.
One word of caution though, you need to be using WebLogic Server's Data Sources and JDBC connection pooling to make sure that you correct transactional behavior if the application is doing any sort of JTA transaction (regardless of whether the JTA transactions are using XA or not...).
Hope this helps,