2 Replies Latest reply on Aug 28, 2015 8:35 AM by Renaud Houssaye

    How to connect jBPM 6.2 via Remote EJB Client API ?

    Renaud Houssaye Newbie

      Hi all,

       

      I can not connect to jBPM 6.2 via Remote EJB Client, I always have exception like

      EJBCLIENT000025: No EJB receiver available for handling [appName:, moduleName:jbpm-console, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@1a198243


      My understanding is that issue may be caused by one of followings:

      1- Bad configuration of WildFly for remoting?
      The running Wilfly does not have port 4447 opened (tested via telnet), but documentation writes default port for remoting is 8080, which responds.https://docs.jboss.org/author/display/WFLY8/EJB+invocations+from+a+remote+client+using+JNDI


      2- jBPM Remote EJBs are not correctly deployed on the server?

      I don't see any DeploymentServiceEJBRemote, ProcessServiceEJBRemote, RuntimeDataServiceEJBRemote, etc. in the startup log trace.
      Do I configure something more in some WildFly .xml config files ?

      3- Wrong module name in JNDI string? Currently tryied with:
      jbpm-console, which seem to be active (WildFly says "Successful version handshake completed for receiver context..." before throwing "No EJB receiver available for handling..." exception).
      sample-war-ejb-app, which refers to nothing deployed... But is given in jBPM example and tests.

      4- Has the remoting only to be used with a custom EJB written by myself? As the "sample" world could mean... But, in this case, why this feature is not offered out-of-the-box?

      I will be happy to get inputs from some hard-skilled developers from the Community.
      Thanks by advance !

       

      Additional inputs for context:

      For the tests, I'm using an out-of-box built of jBPM and following the official documentation from http://docs.jboss.org/jbpm/v6.2/userguide/jBPMIntegration.html#d0e19856 and on test package from github /droolsjbpm/jbpm/tree/master/jbpm-services/jbpm-services-ejb/jbpm-services-ejb-client.

      jBPM engine is working well with some alive processes deployed from Nexus and remoting with Client REST API perfectly works on all features.


      In standalone-full.xml file used at startup, there is no definition for JNDI:1099 nor Remoting:4447 in socket-binding-group. But adding Remoting seems to change nothing.

       

      Dependencies used in my client:

      <dependency>

      <groupId>org.wildfly</groupId>

      <artifactId>wildfly-ejb-client-bom</artifactId>

      <version>8.1.0.Final</version>

      <type>pom</type>

      <scope>compile</scope>

      </dependency>

      <dependency>

      <groupId>org.jbpm</groupId>

      <artifactId>jbpm-services-ejb-client</artifactId>

      <version>6.2.0.Final</version>

      </dependency>

      <dependency>

      <groupId>org.jbpm</groupId>

      <artifactId>jbpm-test</artifactId>

      <version>6.2.0.Final</version>

      <scope>test</scope>

      </dependency>

        • 1. Re: How to connect jBPM 6.2 via Remote EJB Client API ?
          Maciej Swiderski Master

          Renaud Houssaye wrote:

           

          Hi all,

           

          I can not connect to jBPM 6.2 via Remote EJB Client, I always have exception like

          EJBCLIENT000025: No EJB receiver available for handling [appName:, moduleName:jbpm-console, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@1a198243


          My understanding is that issue may be caused by one of followings:

          1- Bad configuration of WildFly for remoting?
          The running Wilfly does not have port 4447 opened (tested via telnet), but documentation writes default port for remoting is 8080, which responds.https://docs.jboss.org/author/display/WFLY8/EJB+invocations+from+a+remote+client+using+JNDI

          you need to set the proper port number in jboss-ejb-client-properties file used by your ejb client application

           

          Renaud Houssaye wrote:

           

          Hi all,

           

          I can not connect to jBPM 6.2 via Remote EJB Client, I always have exception like

          EJBCLIENT000025: No EJB receiver available for handling [appName:, moduleName:jbpm-console, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@1a198243


          My understanding is that issue may be caused by one of followings:

          1- Bad configuration of WildFly for remoting?
          The running Wilfly does not have port 4447 opened (tested via telnet), but documentation writes default port for remoting is 8080, which responds.https://docs.jboss.org/author/display/WFLY8/EJB+invocations+from+a+remote+client+using+JNDI


          2- jBPM Remote EJBs are not correctly deployed on the server?

          I don't see any DeploymentServiceEJBRemote, ProcessServiceEJBRemote, RuntimeDataServiceEJBRemote, etc. in the startup log trace.
          Do I configure something more in some WildFly .xml config files ?

          ejb layer is not deployed with jbpm console as jbpm console is built with CDI beans instead of EJB and these two should not be used within same application. You can deploy ejb based application next to jbpm console (even on the same server) and once configured with same data source they will be able to cooperate

           

          Renaud Houssaye wrote:

           

          Hi all,

           

          I can not connect to jBPM 6.2 via Remote EJB Client, I always have exception like

          EJBCLIENT000025: No EJB receiver available for handling [appName:, moduleName:jbpm-console, distinctName:] combination for invocation context org.jboss.ejb.client.EJBClientInvocationContext@1a198243


          My understanding is that issue may be caused by one of followings:

          1- Bad configuration of WildFly for remoting?
          The running Wilfly does not have port 4447 opened (tested via telnet), but documentation writes default port for remoting is 8080, which responds.https://docs.jboss.org/author/display/WFLY8/EJB+invocations+from+a+remote+client+using+JNDI


          2- jBPM Remote EJBs are not correctly deployed on the server?

          I don't see any DeploymentServiceEJBRemote, ProcessServiceEJBRemote, RuntimeDataServiceEJBRemote, etc. in the startup log trace.
          Do I configure something more in some WildFly .xml config files ?

          3- Wrong module name in JNDI string? Currently tryied with:
          jbpm-console, which seem to be active (WildFly says "Successful version handshake completed for receiver context..." before throwing "No EJB receiver available for handling..." exception).
          sample-war-ejb-app, which refers to nothing deployed... But is given in jBPM example and tests.

          same here, since these ejbs are not deployed they won't be available. You can use sample war ejb app as an example as that application is mainly used for verification tests of ejb layer for jbpm. You don't need to do much besides just wrapping them up in war file and proper persistence.xml configuration (taking into consideration your db settings).

           

          HTH

          • 2. Re: How to connect jBPM 6.2 via Remote EJB Client API ?
            Renaud Houssaye Newbie

            Thanks Maciej.

            I was getting the same conclusion. It starts now to work well.