Getting a 'EJBCLIENT000025' error message if a EJB is called on a remote JBoss EAP server

Solution Verified - Updated -

Issue

  • A WEB or EJB application will call a different EJB deployed at a different instance.
    The configuration of outbound-socket-binding is checked and looks correct.
    The security is set and the password is added as secret-value within the calling server configuration.
    It is possible to invoke the EJB from a remote client without error.
    If the server application call the EJB an error, similar to the following, is shown in the server logfile:
java.lang.IllegalStateException: EJBCLIENT000025: No EJB receiver available for handling [appName:TestRemote, moduleName:ejb, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@50e354aa
  • In JBoss EAP 5.x, I was able to determine if the user entered/configured a bad JNP URL by simply constructing the InitialContext with a Hashtable containing the providerURL=jnpURL
    In JBoss EAP 6.x, I have to make an EJB call to determine if the Remote URL is good. The problem is that when my remote client application received an exception below, I don't know
    if the Remote URL is bad or the userName/Password is bad.
    I would like to know if there is a way to check if the Remote URL is bad, in JBoss EAP 6.x.

  • Getting error during Remote Ejb call EJBCLIENT000025: No EJB receiver available for handling

  • If two instances of JBoss EAP are on the same physical host and have a different set of application deployed A EJBCLIENT000025 error is thrown for some EJB's
  • I have two instances of EAP on my computer and my application use another application, if it is deployed on the same server it works but not if it is only deployed on the other instance. The remote-outbound connection is correct configured. If I set <ejb-receivers exclude-local-receiver="true"> within the jboss-ejb-client.xml the remote EJB is invoked correctly. What is the cause of this EJBCLIENT000025 error?
  • We have two JBoss instances running on the same machine, using port offsets. A client in server instance 1 fails to invoke an EJB in server instance 2 with this exceptions:
java.lang.IllegalStateException: EJBCLIENT000025: No EJB receiver available for handling [appName:, moduleName:example-ejb, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@7972d19e
    at org.jboss.ejb.client.EJBClientContext.requireEJBReceiver(EJBClientContext.java:588)
    at org.jboss.ejb.client.ReceiverInterceptor.handleInvocation(ReceiverInterceptor.java:116)
    at org.jboss.ejb.client.EJBClientInvocationContext.sendRequest(EJBClientInvocationContext.java:183)
    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 $Proxy15.greet(Unknown Source)
...

Environment

  • JBoss Enterprise Application Platform (EAP)
    • 6.x
    • 7.0.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content