Jboss 7.1.1服务器在我配置的一个队列上抛出hornetq重新连接错误。我已使用CLI从队列中删除了消息并删除了数据文件夹,但此错误并未消失。感谢任何帮助。
CLI命令
[standalone@localhost:9999 /] /subsystem=messaging/hornetq-server=default/jms-queue=myQueueC:remove-messages
{
"outcome" => "success",
"result" => 0
}
服务器日志中的异常堆栈跟踪
10:53:47,505 INFO [org.hornetq.ra.inflow.HornetQActivation] (default-short-running-threads-threads - 1) Attempting to reconnect org.hornetq.ra.inflow.HornetQActivationSpec(ra=org.hornetq.ra.HornetQResourceAdapter@20ebddc6 destination=java:/queue/C destinationType=javax.jms.Queue ack=Auto-acknowledge durable=false clientID=null user=null maxSession=15)
10:53:47,518 ERROR [org.hornetq.ra.inflow.HornetQActivation] (default-short-running-threads-threads - 1) Unable to reconnect org.hornetq.ra.inflow.HornetQActivationSpec(ra=org.hornetq.ra.HornetQResourceAdapter@20ebddc6 destination=java:/queue/C destinationType=javax.jms.Queue ack=Auto-acknowledge durable=false clientID=null user=null maxSession=15): java.lang.IllegalArgumentException: interface javax.resource.spi.endpoint.MessageEndpoint is not visible from class loader
at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:616) [rt.jar:1.7.0_67]
at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:592) [rt.jar:1.7.0_67]
at java.lang.reflect.WeakCache$Factory.get(WeakCache.java:244) [rt.jar:1.7.0_67]
at java.lang.reflect.WeakCache.get(WeakCache.java:141) [rt.jar:1.7.0_67]
at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:455) [rt.jar:1.7.0_67]
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:738) [rt.jar:1.7.0_67]
at org.jboss.as.ejb3.inflow.JBossMessageEndpointFactory.createEndpoint(JBossMessageEndpointFactory.java:56)
at org.jboss.as.ejb3.inflow.JBossMessageEndpointFactory.createEndpoint(JBossMessageEndpointFactory.java:49)
at org.hornetq.ra.inflow.HornetQMessageHandler.setup(HornetQMessageHandler.java:185) [hornetq-ra-2.2.13.Final.jar:]
at org.hornetq.ra.inflow.HornetQActivation.setup(HornetQActivation.java:296) [hornetq-ra-2.2.13.Final.jar:]
at org.hornetq.ra.inflow.HornetQActivation.handleFailure(HornetQActivation.java:566) [hornetq-ra-2.2.13.Final.jar:]
at org.hornetq.ra.inflow.HornetQActivation$SetupActivation.run(HornetQActivation.java:609) [hornetq-ra-2.2.13.Final.jar:]
at org.jboss.jca.core.workmanager.WorkWrapper.run(WorkWrapper.java:212)
at org.jboss.threads.SimpleDirectExecutor.execute(SimpleDirectExecutor.java:33)
at org.jboss.threads.QueueExecutor.runTask(QueueExecutor.java:801)
at org.jboss.threads.QueueExecutor.access$100(QueueExecutor.java:45)
at org.jboss.threads.QueueExecutor$Worker.run(QueueExecutor.java:821)
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
答案 0 :(得分:0)
如果您使用自定义JBoss模块,请确保您的模块依赖于 javax.resource.api 。
<module>
<dependencies>
<module name="javax.resource.api" />
</dependencies>
</module>
另一种解决方案是:将依赖关系:javax.resource.api 行添加到 MyApp.jar / META-INF / MANIFEST.MF 文件中。