Hello,
I'm having some trouble migrating to JBoss Messaging 1.0.1SP4 from JBossMQ. I'm
running JBossAS 4.0.5GA.
The problem is when onMessage() is called in a JMS client in an ear. I get a
"java.lang.ClassNotFoundException: No ClassLoaders found for: <my class>".
That class is located in a jar within the ear.
I can instantiate the class elsewhere without a problem, so it's not a missing jar
issue. When the class is deserialized from the JMS ObjectMessage.getObject() method, the
above-mentioned exception occurs:
| public void onMessage(Message message) {
| try {
| ObjectMessage objectMessage = (ObjectMessage) message;
| DNSAMessage dnsaMessage = (DNSAMessage) objectMessage.getObject();
| ...
|
I've read through the scoped classloader wiki docs, and even tried setting the ear to
use the same loader-repository as jboss-messaging as suggested in other threads.
Predictably, if I copy the jar containing my userland class into jboss-messaging.sar, the
class is found but a ClassCastException is thrown, because two separate classloaders are
now trying to use the same classes.
I'm guessing since onMessage is called by a JBM thread, it uses JBM's classloader,
hence the problem. How should I configure JBM so that it doesn't try to load my
userland classes?
Thank you for any ideas and help.
Justin
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4017215#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...