2

我正在开发一个 JBoss 7.0.2 实例。我们的应用程序是一场战争,消息被放入队列中。这工作正常。但是当我们通过监听器读取它时,系统会抛出异常。它正在寻找一个存在于 WEB-INF/classes 中的类。

我知道模块类加载器(如果我是对的,它是 HornetMQ)无法看到这个应用程序类并抛出异常。我不希望我的应用程序类成为服务器库的一部分。生活在战争中的那个阶级是最好的地方。

例外是:

javax.jms.JMSException: com.yyy.TransportMessage from [Module "org.hornetq:main" from local module loader @238b8914 
(roots: /Users/xxx/jboss/multi/jboss-as-7.0.2.Final/modules)]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:191)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:361)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:333)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:310)
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:103)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:603)
    at org.hornetq.utils.ObjectInputStreamWithClassLoader.resolveClass(ObjectInputStreamWithClassLoader.java:71)
    at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1574)
    at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
    at org.hornetq.jms.client.HornetQObjectMessage.getObject(HornetQObjectMessage.java:158)
    at com.xxx.MessageReceiver.handleObjectMessage(NSMessageReceiver.java:72)
    at com.xxx.jms.JMSListener.onMessage(JMSListener.java:1540)
    at org.hornetq.jms.client.JMSMessageListenerWrapper.onMessage(JMSMessageListenerWrapper.java:91)

我应该怎么做才能完成这项工作?

问候。

阿肖克

4

0 回答 0