我是Mule和JMS的新手。只是想弄清楚如何使用连接器添加JMS端点。是否有Mule提供的JMS实现,或者我是否需要使用外部JMS提供程序。
答案 0 :(得分:1)
一个简单的例子是: -
<jms:activemq-connector name="Active_MQ" brokerURL="tcp://localhost:61616" validateConnections="true" doc:name="Active MQ"/>
要将消息发送到队列: -
<flow name="JmsSendFlow" doc:name="JmsSendFlow" >
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8082" path="mainData" doc:name="HTTP"/>
<set-payload value="Test Data" />
<jms:outbound-endpoint queue="StudioOUT" connector-ref="Active_MQ" doc:name="JMS"/>
</flow>
从队列接收消息: -
<flow name="JmsReceiveFlow" doc:name="JmsReceiveFlow" >
<jms:inbound-endpoint queue="StudioOUT" connector-ref="Active_MQ1" exchange-pattern="one-way"/>
<logger message="Message received#[message.payload]" level="INFO" doc:name="Logger"/>
</flow>
有关JMS的更多信息: - http://blogs.mulesoft.com/dev/newbie/mule-school-jms-tutorial/
答案 1 :(得分:0)
以下是Mule JMS连接器的ActiveMQ使用指南。
Mule ActiveMQ集成 http://www.mulesoft.org/documentation/display/MULE3USER/ActiveMQ+Integration
这应该有所帮助。
答案 2 :(得分:0)
拖出另一个HTTP连接器并将其放入画布以创建新流。 为流提供postTopicMessageFlow的新名称。 在“HTTP属性”视图中,将连接器配置设置为现有配置 HTTP_Listener_Configuration。 将路径设置为/ jms,将允许的方法设置为GET。 拖出另一个JMS连接器并将其放入流程的流程部分。 在JMS Properties视图中,选择topic并将其设置为jms连接。 将连接器配置设置为现有的Active_MQ。 如果您看到属性“操作”是必需的警告,请忽略它。 在HTTP和JMS连接器端点之间添加Set Payload转换器。 在“设置有效负载属性”视图中,将显示名称更改为“设置消息”并设置值 到消息查询参数。 向Set Payload转换器添加断点。 在Set Payload转换器之后添加Property变换器。 在“属性”视图中,将显示名称更改为“设置名称”。 选择Set Property并将名称设置为name,将值设置为您的名称。 注意:如果您愿意,可以将其设置为查询参数。 保存文件以重新部署应用程序并发出请求 http://localhost:8081/jms?message=Hello。 看看控制台;;你应该看到你的名字和信息 - 以及 你的同学。