[jboss-dev-forums] [JBoss ESB Development] - listener for ESBAware message+Socket communication

Sandeep Gowda do-not-reply at jboss.com
Tue Nov 23 08:10:37 EST 2010


Sandeep Gowda [http://community.jboss.org/people/SandeepGowda] created the discussion

"listener for ESBAware message+Socket communication"

To view the discussion, visit: http://community.jboss.org/message/572447#572447

--------------------------------------------------------------
Hi,
    I am trying to use Jboss ESB as an interceptor for IP socket comunication.
Usecase:
   Simple message, which used to get communicated through IP socket client & server program. But now i need to do the same communication through Jboss ESB queues.

Configured the Jboss-esb.xml as below.
1)Using the Jbr-provider
2)Client code placed below(i am able to get the connection properly)
3)Listener code is placed below.

Queues are created properly,But listener java class is not getting invoked.(so that i get the message which has been transfered from client).

*console of jboss esb server 4.9 below*

*15:29:38,519 INFO  [JBoss4ESBDeployer] create esb service, Socket.esb
15:29:38,769 INFO  [QueueService] Queue[/queue/socket_in_q] started, fullSize=200000, pageSize=2000, downCacheSize=2000
15:32:22,518 INFO  [JBossRemotingGatewayListener] JBoss Remoting Gateway listener 'listener' started.*


*<?xml version="1.0"?>
<jbossesb parameterReloadSecs="5"
    xmlns=" http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd"
    xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation=" http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd  http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd http://anonsvn.jboss.org/repos/labs/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.2.0.xsd">
    <providers>
        <jbr-provider host="localhost" name="JBR-Socket"
            protocol="socket">
            <jbr-bus busid="sockettest" port="6969" />
        </jbr-provider>
        <jms-provider connection-factory="ConnectionFactory"
            name="socket-jms-provider">
            <jms-bus busid="socketJmsProvider">
                <jms-message-filter dest-name="queue/socket_in_q"
                    dest-type="QUEUE" />
            </jms-bus>
        </jms-provider>
    </providers>
    <services>
        <service category="Socket" description="testSocket" name="socket-JMS-Service">
            <listeners>
                <jbr-listener busidref="sockettest" is-gateway="true"
                    name="socketGateway" />
                <jms-listener busidref="socketJmsProvider" name="JMSEsbAware" />
            </listeners>
            <actions>
                <action class="listener.SocketListener" name="socketlistener"
                    process="process" />
            </actions>
        </service>
    </services>
</jbossesb>*

Client Code:
*public class SendMessage {*

*    public static void main(String args[]) throws Throwable {
        SendMessage sm = new SendMessage();*

*        sm.sendMessageToJBRListener("http", 8080, "sandeep gowda");*

*    }*

*    private void sendMessageToJBRListener(String protocol, int port,
            String message) throws Throwable {
        String locatorURI = protocol + "://localhost:" + port;
        InvokerLocator locator = new InvokerLocator(locatorURI);
        System.out
                .println("Calling JBoss Remoting Listener using locator URI: "
                        + locatorURI);*

*        Client remotingClient = null;
        try {
            remotingClient = new Client(locator);
            remotingClient.connect();*

*            // Deliver the message to the listener...
            Object response = remotingClient.invoke(message);
            System.out.println("JBR Class: " + response.getClass().getName());
            System.out.println("Response from JBoss Remoting Listener '"
                    + locatorURI + "' was '" + response + "'.");
        } finally {
            if (remotingClient != null) {
                remotingClient.disconnect();
            }
        }
    }
}*

Listener code:

*public class SocketListener extends AbstractActionPipelineProcessor{
    
    protected ConfigTree _config;*

*    public SocketListener(ConfigTree config) {
        _config = config;
    }
    
    public Message process(Message arg0) throws ActionProcessingException {*

*        arg0.getContext();
        
        return arg0;
    }*

*}*

*Thanks*
*Sandeep
*
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/572447#572447]

Start a new discussion in JBoss ESB Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2032]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20101123/d82898f7/attachment.html 


More information about the jboss-dev-forums mailing list