Mantis - Resin
|
|||||
Viewing Issue Advanced Details | |||||
|
|||||
ID: | Category: | Severity: | Reproducibility: | Date Submitted: | Last Update: |
2556 | minor | always | 03-26-08 13:40 | 03-27-08 08:58 | |
|
|||||
Reporter: | ferg | Platform: | |||
Assigned To: | ferg | OS: | |||
Priority: | normal | OS Version: | |||
Status: | closed | Product Version: | 3.1.5 | ||
Product Build: | Resolution: | fixed | |||
Projection: | none | ||||
ETA: | none | Fixed in Version: | 3.1.6 | ||
|
|||||
Summary: | 0002556: jmx invocation with classloader | ||||
Description: |
(rep by Karl Goldstein) have a Spring-managed MBean that I would like to register with the resin MBeanServer (the one bound to "java:comp/env/jmx/ MBeanServer" in JNDI). This MBean defines some operations to query and update some metadata in the database, using Hibernate/JPA. The MBean registers fine and I can see it in jconsole in the right place. However, when I tried to invoke an operation, I received an error. The underlying exception was this: interface org.hibernate.jdbc.ConnectionWrapper is not visible from class loader Loading the Hibernate and Spring jars in the parent classloader solved the immediate problem: <resin xmlns="http://caucho.com/ns/resin" [^] xmlns:resin="http://caucho.com/ns/resin/core"> [^] <class-loader> <tree-loader path="lib"/> <tree-loader path="/path/to/my/webapp/WEB-INF/lib/"/> </class-loader> ... However, I'd rather not do this because I want to retain the ability to deploy multiple webapps with different versions of dependencies like Spring and Hibernate (mainly so we can deploy a new version of our webapp and leave the old one untouched so we have a fallback). Is there some way to make it so that mbeans are registered and invoked in the classloader of the webapp that registered them? |
||||
Steps To Reproduce: | |||||
Additional Information: | |||||
Relationships | |||||
Attached Files: | C:\apps\resin-3.1.1\conf\bug.conf [^] (2,085 bytes) 03-27-08 08:46 |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|