Archive for the ‘esb’ Category

WSO2 ESB as a JMS sender with ActiveMQ

Posted: October 12, 2013 in esb, jms, proxy

WSO2 ESB as a JMS sender with ActiveMQ.

JProfiler is a tool for profiling JVM. In this tutorial I will show how to start WSO2 carbon servers with JProfiler so you can monitor the carbon servers for memory, threads and performance.  I will use WSO2 ESB (Enterprise Service Bus) in this guide, however this is same for any carbon server AS, Greg, API Manager …etc.

Step 1 : Dowload the packs

Download the WSO2 ESB from http://wso2.com/products/enterprise-service-bus/ . You can find all the WSO2 products from the Product page of http://wso2.com/.

Download the JProfiler from http://www.ej-technologies.com/download/jprofiler/files

Step 2 : Start JProfiler

Start the JProfiler  sh $JProfiler_HOME/bin/jprofiler

Step 3 : Step into profiling

Click Start centre at the top left

JProfiler Start Center

JProfiler Start Center

Step 4 :  Select Local or remote

2 local or remote

Step 5 : Select the vendor
Select the vendor

Select the vendor

Step 6 : Select the port the ESB will run
Select the port the carbon server will run

Select the port the carbon server will run

Step 7 : Select the startup mood

wait for

Step 8

Copy the selected text

Step 9 : Copy the above selected text to the $ESB_HOme/bin/wso2server.sh
wso2 server sh
Step 9 : Start the ESB server.
Carbon server waiting for JProfiler

Carbon server waiting for JProfiler

You will find ESB is waiting for JProfiler GUI to start. So start KProfiler

Step 11 : Profiler started

Start profiler by pressing OK button and  ESB server will start.

JProfiler started with WSO2 ESB

JProfiler started with WSO2 ESB

By default WSO2 ESB is configured to accept HTTP messages. But you can configure ESB to accept TCP requests also.

  • Add the following to the $ESB_HOME/repository/conf/axis2/axis2.xml
<transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportListener" >
</transportReceiver>
  • Create a proxy to accept the requests
    
    <?xml version="1.0" encoding="UTF-8"?>
    <proxy xmlns="http://ws.apache.org/ns/synapse" name="Udara-Tcp"   transports="tcp" startOnLoad="true" trace="disable">
       <description/>
       <target>
          <endpoint>
             <address uri=""/>
          </endpoint>
          <inSequence>
             <log level="full" />
          </inSequence>
          <outSequence>
             <send/>
          </outSequence>
       </target>
            <parameter name="transport.tcp.contentType">application/xml</parameter>
            <parameter name="transport.tcp.port">8280</parameter>
    </proxy>
    

    Note that  the parameter  tcp port is given as 8280 which means it is listening on port 8280.

Configure WSO2 ESB as a JMS sender

Posted: June 11, 2013 in esb, linux, ubuntu, wso2
Tags: , ,

The flow of the messages,

  1. ESB receives HTTP SOAP messages
  2. ESB send the JMS messages to the JMS broker
  3. JMS messages are stored in a queue
  4. JMS consumer picks the messages from the queue
Step 1: Setup WSO2 ESB
  • Download and extract ESB from $ESB_downlink
  • Configure ESB to send JMS messages
Step 2 : Setup JMS broker – ActiveMQ
  • Download ActiveMQ from $ActiveMQ_Downline
  • Copy the following jars to the $ESB_HOMe/repository/components/lib
  • Start ActiveMQ as ./activemq start
Step 3 : Setup JMS consumer
Step 4 : Send HTTP messages to the ESB

In order to log and see the SOAP messages that comes in to and goes out from WSO2 ESB add the following entries to the log4j.properties file

log4j.logger.org.apache.synapse.transport.passthru.wire=DEBUG

log4j.logger.httpclient.wire.content=DEBUG

You can find some more logging varieties from [1].

[1] http://hc.apache.org/httpcomponents-client-ga/logging.html