Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. If you have not already done so, see Getting Started with WSO2 ESB for details on installing and running WSO2 ESB.
  2. Configure the JMS inbound listener. Following is a sample JMS inbound listener configuration:

    Code Block
    languagehtml/xml
    <inboundEndpoint xmlns="http://ws.apache.org/ns/synapse" name="jms" sequence="request" onError="fault" protocol="jms" suspend="false">
          <parameters>
             <parameter name="interval">1000</parameter>
             <parameter name="transport.jms.CacheLevel">1</parameter>
             <parameter name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</parameter>
             <parameter name="sequential">true</parameter>
             <parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
             <parameter name="java.naming.provider.url">repository/conf/jndi.properties</parameter>
             <parameter name="transport.jms.SessionAcknowledgement">AUTO_ACKNOWLEDGE</parameter>
             <parameter name="transport.jms.SessionTransacted">false</parameter>
             <parameter name="transport.jms.ConnectionFactoryType">topic</parameter>
          </parameters>
       </inboundEndpoint>
    Info

    For more information on the JMS configuration parameters used in the code segments above, see JMS Connection Factory Parameters.

  3. Copy the following JAR files from the <MB_HOME>/clent-lib folder to <ESB_HOME>/repository/components/lib folder.
    • andes-client-3.0.1.jar
    • geronimo-jms_1.1_spec-1.1.0.wso2v1.jar
    • org.wso2.securevault-1.0.0-wso2v2.jar
  4. Open <ESB_HOME>/repository/conf/jndi.properties file and make a reference to the running Message Broker as specified below:
    • Use carbon as the virtual host.

    • Define a queue named JMSMS.
    • Comment out the topic, since it is not required in this scenario. However, in order to avoid getting the javax.naming.NameNotFoundException:TopicConnectionFactory exception during server startup, make a reference to the Message Broker from the TopicConnectionFactory as well. 

      Anchor
      jndi
      jndi
      For example:

      Code Block
      # register some connection factories
      # connectionfactory.[jndiname] = [ConnectionURL]
      connectionfactory.QueueConnectionFactory = amqp://admin:admin@clientID/carbon?brokerlist='tcp://localhost:5673'
      connectionfactory.TopicConnectionFactory = amqp://admin:admin@clientID/carbon?brokerlist='tcp://localhost:5673'
      # register some queues in JNDI using the form
      # queue.[jndiName] = [physicalName]
      queue.JMSMS=JMSMS
      queue.StockQuotesQueue = StockQuotesQueue
  5. Ensure that WSO2 Message Broker is running, and then open a command prompt (or a shell in Linux) and go to the <ESB_HOME>\bin directory.
  6. Start the ESB server by executing executing 
    sh wso2server.sh -Dqpid.dest_syntax=BURL (on Linux/OS X) or 
    wso2server.bat -Dqpid.dest_syntax=BURL (on Windows).

Now you have an instance of WSO2 Message Broker and a WSO2 ESB inbound endpoint configured, up and running.

...