Petals ESB使用JMS连接ActiveMQ到总线

    本文将讲述使用Petals-BC-JMS组件绑定JMS消息到总线上。Petals ESB使用专用的组件来做这件事情。下面以activeMQ来做示例。其它的MQ也同样的方法。

    需要的组件和开发环境。

  • Petals-BC-JMS 服务组件
  • Petals Studio
  • Acitve MQ共享库,这是必须的,同样IBM MQ也需要自己的共享库。

     这里给出activeMQ的共享库地址:petals-sl-activemq-5.3.0.zip,说明这是官方提供的。目前官方没有提供IBM MQ的共享库下载,我也曾在论坛里询问过此事,得到的回复是,自己做一个,呵呵。可能Petals ESB主要针对中小企业应用吧。

    首先要做的事情,你要在Petals Studio当中创建一个SA的项目,如果你使用MAVEN来创建,则需要把activeMQ的相关包依赖进去。如下:

<groupId>org.apache.activemq</groupId> 
<artifactId>activemq-core</artifactId> 
<version>5.5.1</version>

 

   开发步骤如下:

  1,下载activeMQ,并启动,下载地址是: http://activemq.apache.org/activemq-551-release.html,并启动activeMQ,

        

./activemq start >/dev/null 2>& 1 &

       最终可以使用控制台来创建队列或者Topic之类的对象。默认地址是:

http://[安装IP地址]:8161/admin/index.jsp

    默认的用户名密码是admin/admin,登录后,创建两个对象,方便用于测试。


Petals ESB使用JMS连接ActiveMQ到总线_第1张图片
 

     2,启动Petals ESB容器后,安装好petals-bc-jms服务组件和共享库组件petals-sl-activemq-5.3.0,参考如图:


Petals ESB使用JMS连接ActiveMQ到总线_第2张图片
 


Petals ESB使用JMS连接ActiveMQ到总线_第3张图片
 

3.使用Petals Studio,创建一个JMS的SA应用。一定要创建提供者JMS和soap的消费者。

    主要步骤如下:


Petals ESB使用JMS连接ActiveMQ到总线_第4张图片
 


Petals ESB使用JMS连接ActiveMQ到总线_第5张图片
 

这里再说一下详细的jms配置参数,提供开发者可以copy.

java.naming.factory.initial = org.apache.activemq.jndi.ActiveMQInitialContextFactory
 
java.naming.provider.url = tcp://192.168.21.247:61616
 
connectionFactoryNames = connectionFactory, queueConnectionFactory, topicConnectionFactory

 4)把上面的应用打包后,安装部署到ESB容器上。完成后进行测试,方法如下:

 a,检查在服务器上的消费者地址:比如,http://192.168.32.84:8084/jms-activemq/Hello.wsdl

    b.使用soapui创建一个请求,发送一个消息。

 c,通过activemq console检查一下是否可以得到消息。

    这是我测试的结果,参考如下:



  完成。如果是IBM MQ,必须要创建不同版本的共享库才能正常使用。以后将提供IBM MQ5.0和IBM MQ7.0的共享下载和使用教程,敬请期待。

 

你可能感兴趣的:(activemq)