ConfigJMSMessageListener

    JBoss's Generic JMS Inbound Resource Adapter

     

    JCA 1.5 inbound resource adapter for any jms provider.

     

    NOTE: You should check whether your jms provider has their own inbound rar.

     

    Standard Activation Config Properties (from the jca 1.5 spec)

    • destination
      - the jndi name of the Queue or Topic - MANDATORY

    • destinationType
      - the type of destination valid values are

      javax.jms.Queue

      or

      javax.jms.Topic
    • messageSelector
      - the message selector of the subscription - default is null

    • acknowledgeMode
      - the type of acknowledgement when not using transacted jms - valid values

      AUTO_ACKNOWLEDGE/Auto-acknowledge

      or

      DUPS_OK_ACKNOWLEDGE/Dups-ok-acknowledge

      - default is

      Auto-acknowledge

       

    • clientID
      - the client id of the connection - default is null

    • subscriptionDurability
      - whether topic subscriptions are durable - valid values

      Durable

      or

      NonDurable

      - default is

      NonDurable

       

    • subscriptionName
      - the subsription name of the topic subscription

     

    JBoss extension Activation Config Properties

    • providerAdapterJNDI
      - the jndi name of the jms provider - default

      java:/DefaultJMSProvider

       

    • user
      - the user id used to connect to the jms server

    • password
      - the password of the user

    • maxMessages
      - read this number of messages before delivering messages to the mdb (each message is delivered individually on the same thread in an attempt to avoid excessive context switching) - default 1

    • maxSession
      - the maximum number of jms sessions that can concurrently deliver messages to this mdb - default 15

    • keepAlive
      - the length of time to keep inactive sessions in millis - default 60000 (60 seconds)

    • reconnectInterval
      - the length of time in seconds between attempts to (re-)connect to the jms provider - default 10 seconds

    • deliveryActive
      - whether messages should be delivered when the mdb is deployed - valid values

      true

      or

      false

      - default is

      true

       

    • useDLQ
      - whether to use a DLQ handler - valid values

      true

      or

      false

      - default is

      true

       

    • DLQHandler
      - the

      org.jboss.resource.adapter.jms.inflow.DLQHandler

      implementation class name - default

      org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler

       

    • DLQMaxResent
      - the maximum number of times a message is redelivered before it is sent to the DLQ - default 10

    • DLQUser
      - the user id used to make the dlq connection to the jms server

    • DLQPassword
      - the password of the

      DLQUser

       

    • DLQClientID
      - the client id of the dlq connection - default is null

     

    Alternate MDB proxy factory

     

    To activate the generic jms message inflow resource adapter rather than

    the old 3.2 jms container invoker, in

    conf/standardjboss.xml
    replace the invoker proxy binding for
    message-driven-bean
    with the commented out version.

     

        <!-- Uncomment to use JMS message inflow from jmsra.rar
        <invoker-proxy-binding>
          <name>message-driven-bean</name>
          <invoker-mbean>default</invoker-mbean>
          <proxy-factory>org.jboss.ejb.plugins.inflow.JBossJMSMessageEndpointFactory</proxy-factory>
          <proxy-factory-config>
            <activation-config>
               <activation-config-property>
                  <activation-config-property-name>providerAdapterJNDI</activation-config-property-name>
                  <activation-config-property-value>DefaultJMSProvider</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>maxSession</activation-config-property-name>
                  <activation-config-property-value>15</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>maxMessages</activation-config-property-name>
                  <activation-config-property-value>1</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>reconnectInterval</activation-config-property-name>
                  <activation-config-property-value>10</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>useDLQ</activation-config-property-name>
                  <activation-config-property-value>true</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>dLQHandler</activation-config-property-name>
                  <activation-config-property-value>org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>dLQJNDIName</activation-config-property-name>
                  <activation-config-property-value>queue/DLQ</activation-config-property-value>
               </activation-config-property>
               <activation-config-property>
                  <activation-config-property-name>dLQMaxResent</activation-config-property-name>
                  <activation-config-property-value>10</activation-config-property-value>
               </activation-config-property>
            </activation-config>
            <endpoint-interceptors>
              <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
              <interceptor>org.jboss.ejb.plugins.inflow.MessageEndpointInterceptor</interceptor>
              <interceptor>org.jboss.proxy.TransactionInterceptor</interceptor>
              <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
            </endpoint-interceptors>
          </proxy-factory-config>
        </invoker-proxy-binding>
        -->
    

     

    Related