I 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?
   
  Any suggestions are appreciated.
   
  Regards,
   
  Karl
   
   

       
---------------------------------
Looking for last minute shopping deals?  Find them fast with Yahoo! Search.
_______________________________________________
resin-interest mailing list
resin-interest@caucho.com
http://maillist.caucho.com/mailman/listinfo/resin-interest

Reply via email to