Versions Compared

Key

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

...

  • Install WSO2 Enterprise Integrator. For information on how you can install, see the Installing the Product.
  • Deploy the sample back-end service.

    In this example, the SimpleStockQuoteService serves as the back-end service and receives the message from the SMSForwardProxy proxy service via the JMS transport. The response sent by the SimpleStockQuoteService is published in the SMSReceiveNotificationStore queue that is set as the value of the transport.jms.ReplyDestination parameter of the SMSSenderProxy proxy service. This allows the SMSSenderProxy to pick the response and deliver it to the client. Follow the steps below to build and deploy the SimpleStockQuoteService:

    1. Open a command prompt (or a shell in Linux) and go to the <EI_HOME>/samples/axis2Server/src/SimpleStockQuoteService directory.
    2. Run ant

  • Follow the steps below to enable the JMS transport of the ESB profile ESB Profile to communicate with the Message Broker profile:

    1. Edit the <EI_HOME>/conf/axis2/axis2.xml file, find the commented <transport receiver> block and uncomment it as follows:

      Code Block
      languagehtml/xml
       <!--Uncomment this and configure as appropriate for JMS transport support with WSO2 MB 2.x.x -->
         <transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener">
             <parameter name="myTopicConnectionFactory" locked="false">
                <parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
                 <parameter name="java.naming.provider.url" locked="false">conf/jndi.properties</parameter>
                 <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
                 <parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
             </parameter>
       
             <parameter name="myQueueConnectionFactory" locked="false">
                 <parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
                 <parameter name="java.naming.provider.url" locked="false">conf/jndi.properties</parameter>
                 <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
                <parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
             </parameter>
       
             <parameter name="default" locked="false">
                 <parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter>
                 <parameter name="java.naming.provider.url" locked="false">conf/jndi.properties</parameter>
                 <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
                 <parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
             </parameter>
         </transportReceiver>
    2. Uncomment the following <transport sender> block for JMS in the same file:

      Code Block
      languagehtml/xml
      <!-- uncomment this and configure to use connection pools for sending messages-->
      <transportSender name="jms" class="org.apache.axis2.transport.jms.JMSSender"/>
      Info

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

    3. Open the <EI_HOME>/conf/jndi.properties file and update the connection factories and queues as follows:

      Code Block
      # register some connection factories
      # connectionfactory.[jndiname] = [ConnectionURL]
      connectionfactory.QueueConnectionFactory = amqp://admin:admin@clientID/carbon?brokerlist='tcp://localhost:5675'
      
      # register some queues in JNDI using the form
      # queue.[jndiName] = [physicalName]
      queue.SMSStore=SMSStore
      queue.SMSReceiveNotificationStore=SMSReceiveNotificationStore
    4. Copy the following JARs from the <EI_HOME>/wso2/broker/client-lib folder to the <EI_HOME>/lib folder.
      • andes-client-3.2.19.jar
      • geronimo-jms_1.1_spec-1.1.0.wso2v1.jar
      • org.wso2.securevault-1.0.0-wso2v2.jar

  • Start the Message Broker Profile. For information on how to start the Message Broker Profile, see Starting the Message Broker profileMessage Broker Profile.
  • Start the ESB Profile. For information on how to start the ESB Profile, see Starting the ESB profileESB Profile.

Configuring the JMS publisher

...