1 Reply Latest reply on Nov 19, 2017 7:35 AM by jackspa

    JBOSS EAP 7 webMethod Broker Topic connectivity.

    jackspa

      Hi ,

       

      Thanks for your time.

       

      I am facing below error during stop/start after followed your approach. What could be the problem?

       

      I am trying to connect wmjmsnaming://@edmijndibroker.xyz.com:1234/EDMIFramework

       

          "WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {

              "Services that were unable to start:" => ["jboss.serverManagement.controller.management.http.shutdown"],

              "Services that may be the cause:" => ["jboss.ra.webm-jmsra"]

          }

      }

      2017-11-19 17:32:39,024 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "AE_APP_EAR.ear")]) - failure description: {"WFLYCTL0180: Services with missing/unavailable dependencies" => [

          "jboss.deployment.subunit.\"AE_APP_EAR.ear\".\"ApplicationServices_CHNLMDB.jar\".component.ChannelsRequestMessageBean.CREATE is missing [jboss.ra.webm-jmsra]",

          "jboss.deployment.subunit.\"AE_APP_EAR.ear\".\"ApplicationServices_CHNLMDB.jar\".component.AEICM_ACK_TOPIC.CREATE is missing [jboss.ra.webm-jmsra]"

      ]}

      2017-11-19 17:32:39,050 DEBUG [org.jboss.as.controller.management-operation] (Controller Bo@

       

      Please find the configuration details :

       

      1) ejb-jar.xml

       

      <?xml version="1.0"?>

      <ejb-jar xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" version="3.0">

      <display-name>ApplicationServices_CHNLMDB</display-name>

        <enterprise-beans>

          <message-driven id="AEICM_ACK_TOPIC">

            <ejb-name>AEICM_ACK_TOPIC</ejb-name>

            <ejb-class>scb.technical.application.service.ChannelsRequestMessageBean</ejb-class>

            <transaction-type>Bean</transaction-type>

             <message-destination-type>javax.jms.Topic</message-destination-type>

             <activation-config>

              <activation-config-property>

                 <activation-config-property-name>destinationType</activation-config-property-name>

                 <activation-config-property-value>javax.jms.Topic</activation-config-property-value>

              </activation-config-property>

              <activation-config-property>

          <activation-config-property-name>destination</activation-config-property-name>

          <activation-config-property-value>jms/AE_scbRdmIndividualCustomerNotifyIndProfileV1ReportT</activation-config-property-value>

              </activation-config-property>

             <activation-config-property>

                 <activation-config-property-name>subscriptionDurability</activation-config-property-name>

          <activation-config-property-value>Durable</activation-config-property-value>

              </activation-config-property>

              <activation-config-property>

                  <activation-config-property-name>subscriptionName</activation-config-property-name>

                  <activation-config-property-value>AEICM_ACK_TOPIC</activation-config-property-value>

             </activation-config-property>

              <activation-config-property>

                 <activation-config-property-name>acknowledgeMode</activation-config-property-name>

                 <activation-config-property-value>Auto-acknowledge</activation-config-property-value>

               </activation-config-property>

               <activation-config-property>

                 <activation-config-property-name>messageSelector</activation-config-property-name>

                 <activation-config-property-value>countryCode = 'AE' and captureSystem = 'ICM'</activation-config-property-value>

               </activation-config-property>

              </activation-config>

            <env-entry>

              <description>Value of Company ID</description>

              <env-entry-name>companyID</env-entry-name>

              <env-entry-type>java.lang.String</env-entry-type>

              <env-entry-value>AE</env-entry-value>

            </env-entry>

            <env-entry>

              <description>BOQReq</description>

              <env-entry-name>BOQReq</env-entry-name>

              <env-entry-type>java.lang.String</env-entry-type>

              <env-entry-value>N</env-entry-value>

            </env-entry>

         <env-entry>

        <description>Value od Channeld</description>

        <env-entry-name>channelID</env-entry-name>

        <env-entry-type>java.lang.String</env-entry-type>

        <env-entry-value>ICMACK</env-entry-value>

         </env-entry>

         <env-entry>

        <description>Value of Response Required Flag</description>

        <env-entry-name>responseReq</env-entry-name>

        <env-entry-type>java.lang.String</env-entry-type>

        <env-entry-value>N</env-entry-value>

         </env-entry>

          </message-driven>

        </enterprise-beans>

      </ejb-jar>

       

      2) ironjacamar.xml

       

      <?xml version="1.0" encoding="UTF-8"?>

      <!--

           author: jiorgos.miskakis

      This is an implementation using the JBoss 7.x series and the resource adapter from SAG

      -->

      <ironjacamar>

        <config-property name="LogLevel">finest</config-property>

        <config-property name="ProviderIntegrationMode">jndi</config-property>

        <config-property name="Password">xxxxx</config-property>

        <config-property name="UserName">icm_my_user</config-property>

        <config-property name="JndiProperties">

                              java.naming.provider.url=wmjmsnaming://@edmijndibroker.zyz.com:1234/EDMIFramework,

                              java.naming.factory.initial=com.webmethods.jms.naming.WmJmsNamingCtxFactory,

                              com.webmethods.jms.naming.clientgroup=JNDI

                          </config-property>

       

       

        <connection-definitions>

        <connection-definition class-name="com.sun.genericra.outbound.ManagedJMSConnectionFactory"

          jndi-name="java:jboss/ TestGroupSSL_ConnectionFactory" enabled="true"

          pool-name=" TestGroupSSL_ConnectionFactory" use-ccm="true">

        <config-property name="ConnectionFactoryJndiName">TestGroupSSL_ConnectionFactory</config-property>

        <config-property name="ConnectionValidationEnabled">true</config-property>

          

        <xa-pool>

        <min-pool-size>0</min-pool-size>

        <max-pool-size>2</max-pool-size>

        <prefill>false</prefill>

              <flush-strategy>IdleConnections</flush-strategy>

              <wrap-xa-resource>true</wrap-xa-resource>

        </xa-pool>

            <timeout>

              <blocking-timeout-millis>30000</blocking-timeout-millis>

              <idle-timeout-minutes>1</idle-timeout-minutes>

          </timeout>

        </connection-definition>

        <connection-definition class-name="com.sun.genericra.outbound.ManagedTopicConnectionFactory"

          jndi-name="java:jboss/TestGroup_ConnectionFactory" enabled="true"

          pool-name="TestGroup_ConnectionFactory" use-ccm="true">

        <xa-pool>

        <min-pool-size>0</min-pool-size>

        <max-pool-size>5</max-pool-size>

        <prefill>false</prefill>

        </xa-pool>

        </connection-definition>

        </connection-definitions>

        <admin-objects>

        <admin-object class-name="com.sun.genericra.outbound.TopicProxy" enabled="true" jndi-name="java:/jboss/jms/AE_scbRdmIndividualCustomerNotifyIndProfileV1ReportT" pool-name="Topic" use-java-context="true" >

        <config-property name="DestinationJndiName">jms/AE_scbRdmIndividualCustomerNotifyIndProfileV1ReportT</config-property>

        </admin-object>

        </admin-objects>

      </ironjacamar>

       

      3) jboss.xml

       

      <?xml version="1.0" encoding="UTF-8"?>

      <jboss

              xmlns="http://java.sun.com/xml/ns/javaee"

              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

              xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

                                  http://www.jboss.org/j2ee/schema/jboss_5_0.xsd"

              version="3.0">

         <enterprise-beans>

            <message-driven>

               <ejb-name>AEICM_ACK_TOPIC</ejb-name>

               <resource-adapter-name>webm-jmsra.rar</resource-adapter-name>

            </message-driven>

         </enterprise-beans>

      </jboss>

       

      4) MANIFEST.MF

       

      Manifest-Version: 1.0

      Dependencies: com.sun.xml.bind services com.webmethods.jms

       

      5) standalone-full.xml

       

      <?xml version='1.0' encoding='UTF-8'?>

       

       

      <server xmlns="urn:jboss:domain:4.1">

       

       

          <extensions>

              <extension module="org.jboss.as.clustering.infinispan"/>

              <extension module="org.jboss.as.connector"/>

              <extension module="org.jboss.as.deployment-scanner"/>

              <extension module="org.jboss.as.ee"/>

              <extension module="org.jboss.as.ejb3"/>

              <extension module="org.jboss.as.jaxrs"/>

              <extension module="org.jboss.as.jdr"/>

              <extension module="org.jboss.as.jmx"/>

              <extension module="org.jboss.as.jsf"/>

              <extension module="org.jboss.as.jsr77"/>

              <extension module="org.jboss.as.logging"/>

              <extension module="org.jboss.as.mail"/>

              <extension module="org.jboss.as.naming"/>

              <extension module="org.jboss.as.pojo"/>

              <extension module="org.jboss.as.remoting"/>

              <extension module="org.jboss.as.sar"/>

              <extension module="org.jboss.as.security"/>

              <extension module="org.jboss.as.transactions"/>

              <extension module="org.jboss.as.webservices"/>

              <extension module="org.jboss.as.weld"/>

              <extension module="org.wildfly.extension.batch.jberet"/>

              <extension module="org.wildfly.extension.bean-validation"/>

              <extension module="org.wildfly.extension.io"/>

              <extension module="org.wildfly.extension.messaging-activemq"/>

              <extension module="org.wildfly.extension.request-controller"/>

              <extension module="org.wildfly.extension.security.manager"/>

              <extension module="org.wildfly.extension.undertow"/>

              <extension module="org.wildfly.iiop-openjdk"/>

          </extensions>

       

       

          <system-properties>

              <property name="com.webmethods.jms.ssl.keystore" value="keystore.p12"/>

              <property name="com.webmethods.jms.ssl.truststore" value="truststore.jks"/>

              <property name="com.webmethods.jms.broker.keepAliveTimeout" value="5"/>

              <property name="com.webmethods.jms.broker.keepAliveAttempts" value="4"/>

              <property name="com.webmethods.jms.broker.keepAliveInterval" value="30"/>

              <property name="com.webmethods.jms.keepAliveInterval" value="15"/>

              <property name="com.webmethods.jms.keepAliveAttempts" value="10"/>

              <property name="com.webmethods.jms.reconnectAttempts" value="10"/>

          </system-properties>

       

       

       

       

          <management>

              <security-realms>

                  <security-realm name="ManagementRealm">

                      <authentication>

                          <local default-user="$local" skip-group-loading="true"/>

                          <properties path="mgmt-users.properties" relative-to="jboss.server.config.dir"/>

                      </authentication>

                      <authorization map-groups-to-roles="false">

                          <properties path="mgmt-groups.properties" relative-to="jboss.server.config.dir"/>

                      </authorization>

                  </security-realm>

                  <security-realm name="ApplicationRealm">

                      <authentication>

                          <local default-user="$local" allowed-users="*" skip-group-loading="true"/>

                          <properties path="application-users.properties" relative-to="jboss.server.config.dir"/>

                      </authentication>

                      <authorization>

                          <properties path="application-roles.properties" relative-to="jboss.server.config.dir"/>

                      </authorization>

                  </security-realm>

              </security-realms>

              <audit-log>

                  <formatters>

                      <json-formatter name="json-formatter"/>

                  </formatters>

                  <handlers>

                      <file-handler name="file" formatter="json-formatter" path="audit-log.log" relative-to="jboss.server.data.dir"/>

                  </handlers>

                  <logger log-boot="true" log-read-only="false" enabled="false">

                      <handlers>

                          <handler name="file"/>

                      </handlers>

                  </logger>

              </audit-log>

              <management-interfaces>

                  <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true">

                      <socket-binding http="management-http"/>

                  </http-interface>

              </management-interfaces>

              <access-control provider="simple">

                  <role-mapping>

                      <role name="SuperUser">

                          <include>

                              <user name="$local"/>

                          </include>

                      </role>

                  </role-mapping>

              </access-control>

          </management>

       

       

          <profile>

              <subsystem xmlns="urn:jboss:domain:logging:3.0">

                  <console-handler name="CONSOLE">

                      <level name="DEBUG"/>

                      <formatter>

                          <named-formatter name="COLOR-PATTERN"/>

                      </formatter>

                  </console-handler>

                  <periodic-rotating-file-handler name="FILE" autoflush="true">

                      <formatter>

                          <named-formatter name="PATTERN"/>

                      </formatter>

                      <file relative-to="jboss.server.log.dir" path="server.log"/>

                      <suffix value=".yyyy-MM-dd"/>

                      <append value="true"/>

                  </periodic-rotating-file-handler>

                  <logger category="com.arjuna">

                      <level name="WARN"/>

                  </logger>

                  <logger category="org.jboss.as.config">

                      <level name="DEBUG"/>

                  </logger>

                  <logger category="sun.rmi">

                      <level name="WARN"/>

                  </logger>

                  <logger category="org.jboss">

                      <level name="DEBUG"/>

                  </logger>

                  <root-logger>

                      <level name="DEBUG"/>

                      <handlers>

                          <handler name="CONSOLE"/>

                          <handler name="FILE"/>

                      </handlers>

                  </root-logger>

                  <formatter name="PATTERN">

                      <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>

                  </formatter>

                  <formatter name="COLOR-PATTERN">

                      <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>

                  </formatter>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:batch-jberet:1.0">

                  <default-job-repository name="in-memory"/>

                  <default-thread-pool name="batch"/>

                  <job-repository name="in-memory">

                      <in-memory/>

                  </job-repository>

                  <thread-pool name="batch">

                      <max-threads count="10"/>

                      <keepalive-time time="30" unit="seconds"/>

                  </thread-pool>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:bean-validation:1.0"/>

              <subsystem xmlns="urn:jboss:domain:datasources:4.0">

                  <datasources>

                      <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">

                          <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>

                          <driver>h2</driver>

                          <security>

                              <user-name>sa</user-name>

                              <password>sa</password>

                          </security>

                      </datasource>

                      <datasource jndi-name="java:jboss/jdbc/ICM/AE_ICM_RC" pool-name="AE_ICM_RC" enabled="true" use-java-context="true">

                          <connection-url>jdbc:oracle:thin:@(DESCRIPTION_LIST=(LOAD_BALANCE=off)(FAILOVER=on)(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hklpdudas2a-scan.hk.xyz.com)(PORT=1622)))(CONNECT_DATA=(SERVICE_NAME=ICM_SIT_02.hk.xyz.com)))(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hklpdudas2a-scan.hk.xyz.com)(PORT=1622)))(CONNECT_DATA=(SERVICE_NAME=ICM_SIT_02.hk.xyz.com))))</connection-url>

                          <driver>oracle</driver>

                          <security>

                              <user-name>POC</user-name>

                              <password>POC_123</password>

                          </security>

                      </datasource>

                      <datasource jndi-name="java:jboss/jdbc/ICM/AE_ICM_XA_RC" pool-name="AE_ICM_XA_RC" enabled="true" use-java-context="true">

                          <connection-url>jdbc:oracle:thin:@(DESCRIPTION_LIST=(LOAD_BALANCE=off)(FAILOVER=on)(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hklpdudas2a-scan.hk.xyz.com)(PORT=1622)))(CONNECT_DATA=(SERVICE_NAME=ICM_SIT_02.hk.xyz.com)))(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hklpdudas2a-scan.hk.xyz.com)(PORT=1622)))(CONNECT_DATA=(SERVICE_NAME=ICM_SIT_02.hk.xyz.com))))</connection-url>

                          <driver>oracleXA</driver>

                          <security>

                              <user-name>POC</user-name>

                              <password>POC_123</password>

                          </security>

                      </datasource>

                      <drivers>

                          <driver name="h2" module="com.h2database.h2">

                              <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>

                          </driver>

                          <driver name="oracle" module="scb">

                              <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>

                          </driver>

                          <driver name="oracleXA" module="scb">

                              <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>

                          </driver>

                      </drivers>

                  </datasources>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">

                  <deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" runtime-failure-causes-rollback="${jboss.deployment.scanner.rollback.on.failure:false}"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:ee:4.0">

                  <global-modules>

                      <module name="scb" slot="main"/>

                      <module name="com.webmethods.jms" slot="main"/>

                  </global-modules>

                  <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>

                  <jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement>

                  <concurrent>

                      <context-services>

                          <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/>

                      </context-services>

                      <managed-thread-factories>

                          <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>

                      </managed-thread-factories>

                      <managed-executor-services>

                          <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" keepalive-time="5000"/>

                      </managed-executor-services>

                      <managed-scheduled-executor-services>

                          <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" keepalive-time="3000"/>

                      </managed-scheduled-executor-services>

                  </concurrent>

                  <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:ejb3:4.0">

                  <session-bean>

                      <stateless>

                          <bean-instance-pool-ref pool-name="slsb-strict-max-pool"/>

                      </stateless>

                      <stateful default-access-timeout="5000" cache-ref="simple" passivation-disabled-cache-ref="simple"/>

                      <singleton default-access-timeout="5000"/>

                  </session-bean>

                  <mdb>

                      <resource-adapter-ref resource-adapter-name="webm-jmsra.rar"/>

                      <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>

                  </mdb>

                  <pools>

                      <bean-instance-pools>

                          <strict-max-pool name="slsb-strict-max-pool" derive-size="from-worker-pools" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>

                          <strict-max-pool name="mdb-strict-max-pool" derive-size="from-cpu-count" instance-acquisition-timeout="5" instance-acquisition-timeout-unit="MINUTES"/>

                      </bean-instance-pools>

                  </pools>

                  <caches>

                      <cache name="simple"/>

                      <cache name="distributable" passivation-store-ref="infinispan" aliases="passivating clustered"/>

                  </caches>

                  <passivation-stores>

                      <passivation-store name="infinispan" cache-container="ejb" max-size="10000"/>

                  </passivation-stores>

                  <async thread-pool-name="default"/>

                  <timer-service thread-pool-name="default" default-data-store="default-file-store">

                      <data-stores>

                          <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/>

                      </data-stores>

                  </timer-service>

                  <remote connector-ref="http-remoting-connector" thread-pool-name="default"/>

                  <thread-pools>

                      <thread-pool name="default">

                          <max-threads count="10"/>

                          <keepalive-time time="100" unit="milliseconds"/>

                      </thread-pool>

                  </thread-pools>

                  <iiop enable-by-default="false" use-qualified-name="false"/>

                  <default-security-domain value="other"/>

                  <default-missing-method-permissions-deny-access value="true"/>

                  <log-system-exceptions value="true"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:io:1.1">

                  <worker name="default"/>

                  <buffer-pool name="default"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:infinispan:4.0">

                  <cache-container name="server" default-cache="default" module="org.wildfly.clustering.server">

                      <local-cache name="default">

                          <transaction mode="BATCH"/>

                      </local-cache>

                  </cache-container>

                  <cache-container name="web" default-cache="passivation" module="org.wildfly.clustering.web.infinispan">

                      <local-cache name="passivation">

                          <locking isolation="REPEATABLE_READ"/>

                          <transaction mode="BATCH"/>

                          <file-store passivation="true" purge="false"/>

                      </local-cache>

                      <local-cache name="persistent">

                          <locking isolation="REPEATABLE_READ"/>

                          <transaction mode="BATCH"/>

                          <file-store passivation="false" purge="false"/>

                      </local-cache>

                  </cache-container>

                  <cache-container name="ejb" aliases="sfsb" default-cache="passivation" module="org.wildfly.clustering.ejb.infinispan">

                      <local-cache name="passivation">

                          <locking isolation="REPEATABLE_READ"/>

                          <transaction mode="BATCH"/>

                          <file-store passivation="true" purge="false"/>

                      </local-cache>

                      <local-cache name="persistent">

                          <locking isolation="REPEATABLE_READ"/>

                          <transaction mode="BATCH"/>

                          <file-store passivation="false" purge="false"/>

                      </local-cache>

                  </cache-container>

                  <cache-container name="hibernate" default-cache="local-query" module="org.hibernate.infinispan">

                      <local-cache name="entity">

                          <transaction mode="NON_XA"/>

                          <eviction strategy="LRU" max-entries="10000"/>

                          <expiration max-idle="100000"/>

                      </local-cache>

                      <local-cache name="local-query">

                          <eviction strategy="LRU" max-entries="10000"/>

                          <expiration max-idle="100000"/>

                      </local-cache>

                      <local-cache name="timestamps"/>

                  </cache-container>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:iiop-openjdk:1.0">

                  <initializers transactions="spec" security="identity"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:jaxrs:1.0"/>

              <subsystem xmlns="urn:jboss:domain:jca:4.0">

                  <archive-validation enabled="true" fail-on-error="true" fail-on-warn="false"/>

                  <bean-validation enabled="true"/>

                  <default-workmanager>

                      <short-running-threads>

                          <core-threads count="50"/>

                          <queue-length count="50"/>

                          <max-threads count="50"/>

                          <keepalive-time time="10" unit="seconds"/>

                      </short-running-threads>

                      <long-running-threads>

                          <core-threads count="50"/>

                          <queue-length count="50"/>

                          <max-threads count="50"/>

                          <keepalive-time time="10" unit="seconds"/>

                      </long-running-threads>

                  </default-workmanager>

                  <cached-connection-manager/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:jdr:1.0"/>

              <subsystem xmlns="urn:jboss:domain:jmx:1.3">

                  <expose-resolved-model/>

                  <expose-expression-model/>

                  <remoting-connector/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:jsf:1.0"/>

              <subsystem xmlns="urn:jboss:domain:jsr77:1.0"/>

              <subsystem xmlns="urn:jboss:domain:mail:2.0">

                  <mail-session name="default" jndi-name="java:jboss/mail/Default">

                      <smtp-server outbound-socket-binding-ref="mail-smtp"/>

                  </mail-session>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">

                  <server name="default">

                      <security-setting name="#">

                          <role name="guest" delete-non-durable-queue="true" create-non-durable-queue="true" consume="true" send="true"/>

                      </security-setting>

                      <address-setting name="#" message-counter-history-day-limit="10" page-size-bytes="2097152" max-size-bytes="10485760" expiry-address="jms.queue.ExpiryQueue" dead-letter-address="jms.queue.DLQ"/>

                      <http-connector name="http-connector" endpoint="http-acceptor" socket-binding="http"/>

                      <http-connector name="http-connector-throughput" endpoint="http-acceptor-throughput" socket-binding="http">

                          <param name="batch-delay" value="50"/>

                      </http-connector>

                      <in-vm-connector name="in-vm" server-id="0"/>

                      <http-acceptor name="http-acceptor" http-listener="default"/>

                      <http-acceptor name="http-acceptor-throughput" http-listener="default">

                          <param name="batch-delay" value="50"/>

                          <param name="direct-deliver" value="false"/>

                      </http-acceptor>

                      <in-vm-acceptor name="in-vm" server-id="0"/>

                      <jms-queue name="ExpiryQueue" entries="java:/jms/queue/ExpiryQueue"/>

                      <jms-queue name="DLQ" entries="java:/jms/queue/DLQ"/>

                      <jms-topic name="jms/AE_scbRdmIndividualCustomerNotifyIndProfileV1ReportT" entries="java:/jboss/jms/AE_scbRdmIndividualCustomerNotifyIndProfileV1ReportT"/>

                      <connection-factory name="InVmConnectionFactory" entries="java:/ConnectionFactory" connectors="in-vm"/>

                      <connection-factory name="RemoteConnectionFactory" entries="java:jboss/exported/jms/RemoteConnectionFactory" connectors="http-connector"/>

                      <pooled-connection-factory name="activemq-ra" transaction="xa" entries="java:/JmsXA java:jboss/DefaultJMSConnectionFactory" connectors="in-vm"/>

                  </server>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:naming:2.0">

                  <remote-naming/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:pojo:1.0"/>

              <subsystem xmlns="urn:jboss:domain:remoting:3.0">

                  <endpoint/>

                  <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:resource-adapters:4.0">

                  <resource-adapters>

                      <resource-adapter id="webm-jmsra.rar">

                          <archive>

                              webm-jmsra.rar

                          </archive>

                          <transaction-support>NoTransaction</transaction-support>

                          <config-property name="UserName">

                              icm_my_user

                          </config-property>

                          <config-property name="JndiProperties">

                              java.naming.factory.initial=com.webmethods.jms.naming.WmJmsNamingCtxFactory,java.naming.provider.url=wmjmsnaming://@edmijndibroker.hk.xyz.com:1234/EDMIFramework

                          </config-property>

                          <config-property name="SupportsXA">

                              false

                          </config-property>

                          <config-property name="Password">

                              abc12345

                          </config-property>

                          <connection-definitions>

                              <connection-definition class-name="com.sun.genericra.outbound.ManagedJMSConnectionFactory" jndi-name="java:/jms/broker/wm" enabled="true" use-java-context="true" pool-name="java:/jms/broker/wm" use-ccm="true">

                                  <config-property name="JndiProperties">

                                      java.naming.factory.initial=com.webmethods.jms.naming.WmJmsNamingCtxFactory,java.naming.provider.url=wmjmsnaming://@edmijndibroker.hk.xyz.com:1234/EDMIFramework

                                  </config-property>

                                  <config-property name="ConnectionValidationEnabled">

                                      true

                                  </config-property>

                                  <config-property name="ConnectionFactoryJndiName">

                                      OutboundQueueConnectionFactory

                                  </config-property>

                                  <pool>

                                      <min-pool-size>10</min-pool-size>

                                      <max-pool-size>50</max-pool-size>

                                      <prefill>true</prefill>

                                      <use-strict-min>true</use-strict-min>

                                      <flush-strategy>IdleConnections</flush-strategy>

                                  </pool>

                                  <security>

                                      <application/>

                                  </security>

                                  <validation>

                                      <background-validation>true</background-validation>

                                  </validation>

                              </connection-definition>

                          </connection-definitions>

                      </resource-adapter>

                  </resource-adapters>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:request-controller:1.0"/>

              <subsystem xmlns="urn:jboss:domain:sar:1.0"/>

              <subsystem xmlns="urn:jboss:domain:security-manager:1.0">

                  <deployment-permissions>

                      <maximum-set>

                          <permission class="java.security.AllPermission"/>

                      </maximum-set>

                  </deployment-permissions>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:security:1.2">

                  <security-domains>

                      <security-domain name="other" cache-type="default">

                          <authentication>

                              <login-module code="Remoting" flag="optional">

                                  <module-option name="password-stacking" value="useFirstPass"/>

                              </login-module>

                              <login-module code="RealmDirect" flag="required">

                                  <module-option name="password-stacking" value="useFirstPass"/>

                              </login-module>

                          </authentication>

                      </security-domain>

                      <security-domain name="jboss-web-policy" cache-type="default">

                          <authorization>

                              <policy-module code="Delegating" flag="required"/>

                          </authorization>

                      </security-domain>

                      <security-domain name="jboss-ejb-policy" cache-type="default">

                          <authorization>

                              <policy-module code="Delegating" flag="required"/>

                          </authorization>

                      </security-domain>

                      <security-domain name="jaspitest" cache-type="default">

                          <authentication-jaspi>

                              <login-module-stack name="dummy">

                                  <login-module code="Dummy" flag="optional"/>

                              </login-module-stack>

                              <auth-module code="Dummy"/>

                          </authentication-jaspi>

                      </security-domain>

                  </security-domains>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:transactions:3.0">

                  <core-environment>

                      <process-id>

                          <uuid/>

                      </process-id>

                  </core-environment>

                  <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:undertow:3.1">

                  <buffer-cache name="default"/>

                  <server name="default-server">

                      <ajp-listener name="ajpListener" socket-binding="ajp" scheme="http"/>

                      <http-listener name="default" socket-binding="http" redirect-socket="https"/>

                      <host name="default-host" alias="localhost">

                          <location name="/" handler="welcome-content"/>

                          <filter-ref name="server-header"/>

                          <filter-ref name="x-powered-by-header"/>

                      </host>

                  </server>

                  <servlet-container name="default">

                      <jsp-config/>

                      <websockets/>

                  </servlet-container>

                  <handlers>

                      <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>

                  </handlers>

                  <filters>

                      <response-header name="server-header" header-name="Server" header-value="JBoss-EAP/7"/>

                      <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>

                  </filters>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:webservices:2.0">

                  <wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl-host>

                  <endpoint-config name="Standard-Endpoint-Config"/>

                  <endpoint-config name="Recording-Endpoint-Config">

                      <pre-handler-chain name="recording-handlers" protocol-bindings="##SOAP11_HTTP ##SOAP11_HTTP_MTOM ##SOAP12_HTTP ##SOAP12_HTTP_MTOM">

                          <handler name="RecordingHandler" class="org.jboss.ws.common.invocation.RecordingServerHandler"/>

                      </pre-handler-chain>

                  </endpoint-config>

                  <client-config name="Standard-Client-Config"/>

              </subsystem>

              <subsystem xmlns="urn:jboss:domain:weld:3.0"/>

          </profile>

       

       

          <interfaces>

              <interface name="management">

                  <inet-address value="${jboss.bind.address.management:10.20.235.17}"/>

              </interface>

              <interface name="public">

                  <inet-address value="${jboss.bind.address:10.20.235.17}"/>

              </interface>

              <interface name="unsecure">

                  <inet-address value="${jboss.bind.address.unsecure:10.20.235.17}"/>

              </interface>

          </interfaces>

       

       

          <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">

              <socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>

              <socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>

              <socket-binding name="ajp" port="${jboss.ajp.port:8010}"/>

              <socket-binding name="http" port="${jboss.http.port:10010}"/>

              <socket-binding name="https" port="${jboss.https.port:8443}"/>

              <socket-binding name="iiop" interface="unsecure" port="3528"/>

              <socket-binding name="iiop-ssl" interface="unsecure" port="3529"/>

              <socket-binding name="txn-recovery-environment" port="4712"/>

              <socket-binding name="txn-status-manager" port="4713"/>

              <outbound-socket-binding name="mail-smtp">

                  <remote-destination host="localhost" port="25"/>

              </outbound-socket-binding>

          </socket-binding-group>

      </server>

       

      6) Code :

       

      String DEFAULT_DESTINATION = "jms/AE_scbRdmIndividualCustomerNotifyIndProfileV1ReportT";

        //String DEFAULT_MESSAGE_COUNT = "1";

        String DEFAULT_USERNAME = "icm_my_user";

        String DEFAULT_PASSWORD = "xxxxx";

        //String INITIAL_CONTEXT_FACTORY = "org.jboss.naming.remote.client.InitialContextFactory";

        String INITIAL_CONTEXT_FACTORY = "com.webMethods.jms.naming.WmJmsNamingCtxFactory";

        String PROVIDER_URL = "wmjmsnaming://@edmijndibroker.hk.zyz.com:1234/EDMIFramework";

       

       

                     // ic = new InitialContext();

       

        //String userName = System.getProperty("username", DEFAULT_USERNAME);

                  //String password = System.getProperty("password", DEFAULT_PASSWORD);

       

       

                  // Set up the namingContext for the JNDI lookup

                  Properties env = new Properties();

                  env.put(Context.INITIAL_CONTEXT_FACTORY, INITIAL_CONTEXT_FACTORY);

                  env.put(Context.PROVIDER_URL, System.getProperty(Context.PROVIDER_URL, PROVIDER_URL));

                  env.put(Context.SECURITY_PRINCIPAL, "icm_my_user");

                  env.put(Context.SECURITY_CREDENTIALS, "xxxxxx");

                  ic = new InitialContext(env);

       

                      System.out.println("Connection Factory :" + alertMessageWrapper.getConnectionFactory());

                      System.out.println("Topic name " + alertMessageWrapper.getTopicName());

                      factory = (ConnectionFactory) ic.lookup("java:jboss/exported/jms/RemoteConnectionFactory");

                      conn = factory.createConnection();

                      session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);

                      destination = (javax.jms.Topic) ic.lookup(DEFAULT_DESTINATION);

                      sender = session.createProducer(destination);

                      TextMessage message = session.createTextMessage(alertMessageWrapper.getMessage());

                      sender.send(message);

       

       

      If i remove this line from standalone-full.xml, server starting fine. But getting Class Not fond exxception.

                     <mdb>

                      <resource-adapter-ref resource-adapter-name="webm-jmsra.rar"/>

                      <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>

                  </mdb>

       

      getting com.webMethods.jms.naming.WmJmsNamingCtxFactory ClassNotFoundException.

       

      i mapped following vendor jars:

       

      <module xmlns="urn:jboss:module:1.1" name="com.softwareag.webMethods.broker">

      <properties>

      <property name="jboss.api" value="private"/>

      </properties>

      <resources>

      <resource-root path="/apps/ICM/EDMI/wm-brokerclient.jar"/>

      <resource-root path="/apps/ICM/EDMI/wm-jmsclient.jar"/>

      <resource-root path="/apps/ICM/EDMI/wm-jmsnaming.jar"/>

      <resource-root path="/apps/ICM/EDMI/wm-g11nutils.jar"/>

      </resources>

      <dependencies>

      <module name="javax.api"/>

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

      </dependencies>

      </module>

       

      Note : Even i copied all the jars in EAR also getting  com.webMethods.jms.naming.WmJmsNamingCtxFactory ClassNotFoundException.

       

      Is it Must to deploy webm-jmsra.rar?. I dont have this webm-jmsra.rar file. I have only below jar files.

       

      what is the process/steps to talk to webMethod broker topics?

       

      Please let me know what could be the problem?

       

      Thanks & regards

      Viswa..

        • 1. Re: JBOSS EAP 7 webMethod Broker Topic connectivity.
          jackspa

          Hi,,

           

          Please find the error :

           

          te InitialContextFactory com.webMethods.jms.naming.WmJmsNamingCtxFactory from classloader ModuleClassLoader for Module "deployment.AE_APP_EAR.ear.CustProfile.jar:main" from Service Module Loader [Root exception is java.lang.ClassNotFoundException: com.webMethods.jms.naming.WmJmsNamingCtxFactory from [Module "deployment.AE_APP_EAR.ear.CustProfile.jar:main" from Service Module Loader]]

          2017-11-19 20:31:29,627 INFO  [stdout] (EJB default - 4) javax.naming.NamingException: WFLYNAM0027: Failed instantiate InitialContextFactory com.webMethods.jms.naming.WmJmsNamingCtxFactory from classloader ModuleClassLoader for Module "deployment.AE_APP_EAR.ear.CustProfile.jar:main" from Service Module Loader

          2017-11-19 20:31:29,627 INFO  [stdout] (EJB default - 4)        at org.jboss.as.naming.InitialContext.getDefaultInitCtx(InitialContext.java:118) ~[wildfly-naming-7.0.6.GA-redhat-2.jar!/:7.0.6.GA-redhat-2]

          2017-11-19 20:31:29,627 INFO  [stdout] (EJB default - 4)        at org.jboss.as.naming.InitialContext.init(InitialContext.java:99) ~[wildfly-naming-7.0.6.GA-redhat-2.jar!/:7.0.6.GA-redhat-2]

          2017-11-19 20:31:29,627 INFO  [stdout] (EJB default - 4)        at javax.naming.ldap.InitialLdapContext.<init>(InitialLdapContext.java:154) ~[?:1.8.0_131]

          2017-11-19 20:31:29,627 INFO  [stdout] (EJB default - 4)        at org.jboss.as.naming.InitialContext.<init>(InitialContext.java:89) ~[wildfly-naming-7.0.6.GA-redhat-2.jar!/:7.0.6.GA-redhat-2]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at org.jboss.as.naming.InitialContextFactory.getInitialContext(InitialContextFactory.java:43) ~[wildfly-naming-7.0.6.GA-redhat-2.jar!/:7.0.6.GA-redhat-2]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684) ~[?:1.8.0_131]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313) ~[?:1.8.0_131]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at javax.naming.InitialContext.init(InitialContext.java:244) ~[?:1.8.0_131]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at javax.naming.InitialContext.<init>(InitialContext.java:216) ~[?:1.8.0_131]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at scb.business.customer.event.MessageSender.send(MessageSender.java:82) [CustProfile.jar:?]

          2017-11-19 20:31:29,628 INFO  [stdout] (EJB default - 4)        at

          scb.business.customer.service.BusinessEventServiceBean.pushtoExternalSystem(BusinessEventServiceBean.java:543) [CustProfile.jar:?].

           

          I added as module and even extracted inside module/system/ and also included in EAR. But No luck.

           

          Viswa..