我正在使用EJB 3.0和JBoss AS 7.1.1 Final。我尝试将客户端连接到服务器时收到此错误:
Aug 15, 2012 12:05:00 PM org.jboss.ejb.client.EJBClient <clinit>
INFO: JBoss EJB Client version 1.0.5.Final
Exception in thread "main" java.lang.IllegalStateException: No EJB receiver available for handling
[appName:GrahamsProjServer,modulename:GrahamsProjServer,distinctname:] combination for invocation context org.jboss.ejb.client.EJBClientInvoc
ationContext@6a340101
at org.jboss.ejb.client.EJBClientContext.requireEJBReceiver(EJBClientContext.java:584)
at org.jboss.ejb.client.ReceiverInterceptor.handleInvocation(ReceiverInterceptor.java:119)
at org.jboss.ejb.client.EJBClientInvocationContext.sendRequest(EJBClientInvocationContext.java:181)
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:136)
at org.jboss.ejb.client.EJBInvocationHandler.doInvoke(EJBInvocationHandler.java:121)
at org.jboss.ejb.client.EJBInvocationHandler.invoke(EJBInvocationHandler.java:104)
at $Proxy0.test(Unknown Source)
at grahamsprojclient.main.Start.testItAll(Unknown Source)
at grahamsprojclient.main.Start.main(Unknown Source)
这是我的standalone.xml:http://pastebin.com/BuvQ6f2H
这是我的jboss-ejb-client.properties:http://pastebin.com/mKpqZuZJ
以下是我的客户的代码:http://pastebin.com/wcVBZvKn
我的类路径确实包含jboss-ejb-client.properties。我通过查看清单来确定。
当我启动客户端时,服务器已经运行,服务器每次都打印出来:
12:05:00,330 INFO [org.jboss.as.naming] (Remoting "h890bp1" task-3) JBAS011806: Channel end notification received, closing channel Channel ID 2ea5a90b (inbound) of Remoting connection 11d4c3d5 to /127.0.0.1:51992
我已经在这个问题上工作了好几天,但还没有找到解决方案。任何帮助将不胜感激。如果您需要我发布的任何其他信息,请不要犹豫,我会立即发布。
答案 0 :(得分:23)
我找到了解决方案!我只需要将此行添加到我的客户端代码中:jndiProperties.put("jboss.naming.client.ejb.context", true);
我在发布到此问题的评论中找到了它:https://community.jboss.org/message/747360?_sscc=t