3 Replies Latest reply on Apr 12, 2018 4:52 AM by eduda

    Problem with Generic JMS Resource Adapter with Tibco Provider

    perob_99

      Hi, I have a jboss eap 7 installation in domain mode, I need to connect to Tibco jms provider, but I have a problem with installation jms Resource adapter module.

       

       

      I made the follow step to configure the adapter:

       

      1 - Create a module.xml file in EAP_HOME/modules/com/tibco/tibjms/main as below:

       

      more  modules/com/tibco/tibjms/main/module.xml

      <module xmlns="urn:jboss:module:1.1" name="com.tibco.tibjms">

        <resources>

          <!-- all jars required by the JMS provider, in this case Tibco -->

          <resource-root path="tibjms.jar"/>

          <resource-root path="tibcrypt.jar"/>

        </resources>

        <dependencies>

          <module name="javax.api"/>

          <module name="javax.jms.api"/>

        </dependencies>

      </module>

       

      And put the binary  tibcrypt.jar and tibjms.jar in the directory:

       

      $ ls -l  modules/com/tibco/tibjms/main/

      total 780

      -rw-rw-r--. 1 jboss jboss    353 Jun 28 16:57 module.xml

      -rwxr-x---. 1 jboss jboss 394670 Jun 28 16:56 tibcrypt.jar

      -rwxr-x---. 1 jboss jboss 394392 Jun 28 16:56 tibjms.jar

       

       

      2 - Add the module to profile NewService:

      /profile=NewService/subsystem=ee:list-add(name=global-modules, value={"name" => "com.tibco.tibjms", "slot"=>"main"}

       

      when the server start I have the follow message in the log:

       

      2017-07-11 10:00:45,765 ERROR [org.jboss.as.controller.management-operation] (ServerService Thread Pool -- 58) WFLYCTL0013: Operation ("add") failed - address: ([

          ("subsystem" => "resource-adapters"),

          ("resource-adapter" => "com.tibco.tibjms")

      ]) - failure description: "WFLYJCA0073: Failed to load module for RA [com.tibco.tibjms]"

       

      Thank you in advance for the help

        • 1. Re: Problem with Generic JMS Resource Adapter with Tibco Provider
          perob_99

          I want to add that the full version is jboss eap 7 update 4

          • 2. Re: Problem with Generic JMS Resource Adapter with Tibco Provider
            perob_99

            I would like to complete the description of what happened, summarizing:

            1 - Create a module.xml file in EAP_HOME/modules/com/tibco/tibjms/main as below:

             

            more  modules/com/tibco/tibjms/main/module.xml

            <module xmlns="urn:jboss:module:1.1" name="com.tibco.tibjms">

              <resources>

                <!-- all jars required by the JMS provider, in this case Tibco -->

                <resource-root path="tibjms.jar"/>

                <resource-root path="tibcrypt.jar"/>

              </resources>

              <dependencies>

                <module name="javax.api"/>

                <module name="javax.jms.api"/>

              </dependencies>

            </module>

            2 - Add the module to profile NewService:

            /profile=NewService/subsystem=ee:list-add(name=global-modules, value={"name" => "com.tibco.tibjms", "slot"=>"main"}

            3 - Add binding jndi:

            /profile=service/subsystem=naming/binding="java:global/remoteJMS":add(binding-type=external-context,module=com.tibco.tibjms,class=javax.naming.InitialContext,environment=[java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory,java.naming.provider.url=tibjmsnaming://<ip>:7222,java.naming.factory.url.pkgs=com.tibco.tibjms.naming,org.jboss.as.naming.lookup.by.string=true])

            4 - Load module with error:

            /profile=NewService/subsystem=resource-adapters/resource-adapter=com.tibco.tibjms:add(module=com.tibco.tibjms,transaction-support=XATransaction)

            {

                "outcome" => "failed",

                "result" => undefined,

                "failure-description" => {"WFLYDC0074: Operation failed or was rolled back on all servers. Server failures:" => {"server-group" => {"ems" => {"host" => {"shq-web-002" => {"ems" => "WFLYJCA0073: Failed to load module for RA [com.tibco.tibjms]"}}}}}},

                "rolled-back" => true,

                "server-groups" => {"ems" => {"host" => {"shq-web-002" => {"ems" => {"response" => {

                    "outcome" => "failed",

                    "result" => undefined,

                    "failure-description" => "WFLYJCA0073: Failed to load module for RA [com.tibco.tibjms]",

                    "rolled-back" => true

                }}}}}}

            }

             

            Can you help me ?

            Thanks

            • 3. Re: Problem with Generic JMS Resource Adapter with Tibco Provider
              eduda

              Hi Roberto,

              the problem why your command 4 fails is that the module com.tibco.tibjms does not meet resource adapter criteria. The module contains only additional jars required for communication with Tibco not the resource adapter. Fortunately Tibco works with Wildfly's generic resource adapter which is located in the module org.jboss.genericjms.

               

              When you look into the org.jboss.genericjms module, it contains optional dependency on non-existing module called org.jboss.genericjms.provider. So to get your Tibco jars on classpath you have two options.

              1. Create module org.jboss.genericjms.provider and insert the Tibco jars here.
              2. Add dependency on your module com.tibco.tibjms to org.jboss.genericjms module.

               

              If you have correctly configured the modules you can add new generic resource adapter by following command:

              /profile=NewService/subsystem=resource-adapters/resource-adapter=com.tibco.tibjms:add(module=org.jboss.genericjms,transaction-support=XATransaction)