嗨我是Spring JMS和websphere MQ的新手。可以任何人給我一步一步的過程或例如如何接收來自websphere MQ的消息,並能夠在控制檯中打印該消息 非常感謝您的幫助Spring JMS和Websphere MQ
回答
下面是使用Spring的MDP /激活規範爲WebSphere MQ
MDP-listener.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<bean id="messageListener" class="com.rohid.samples.SpringMdp" />
<bean class="org.springframework.jms.listener.endpoint.JmsMessageEndpointManager">
<property name="activationSpec">
<bean class="com.ibm.mq.connector.inbound.ActivationSpecImpl">
<property name="destinationType" value="javax.jms.Queue"/>
<property name="destination" value="QUEUE1"/>
<property name="hostName" value="A.B.C"/>
<property name="queueManager" value="QM_"/>
<property name="port" value="1414"/>
<property name="channel" value="SYSTEM.ADMIN.SVNNN"/>
<property name="transportType" value="CLIENT"/>
<property name="userName" value="abc"/>
<property name="password" value="jabc"/>
</bean>
</property>
<property name="messageListener" ref="messageListener"/>
<property name="resourceAdapter" ref="myResourceAdapterBean"/>
</bean>
<bean id="myResourceAdapterBean" class ="org.springframework.jca.support.ResourceAdapterFactoryBean">
<property name="resourceAdapter">
<bean class="com.ibm.mq.connector.ResourceAdapterImpl">
<property name="maxConnections" value="50"/>
</bean>
</property>
<property name="workManager">
<bean class="org.springframework.jca.work.SimpleTaskWorkManager"/>
</property>
</bean>
</beans>
的web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/context/mdp-listener.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
SpringMdp
package com.rohid.samples;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.TextMessage;
public class SpringMdp implements MessageListener {
public void onMessage(Message message) {
try {
if(message instanceof TextMessage) {
System.out.println(this + " : " + ((TextMessage) message).getText());
}
} catch (JMSException ex){
throw new RuntimeException(ex);
}
}
}
工作示例
'
這些是爲WMQ V5.3編寫的,但大多仍然應用。 WMQ管理員所做的更改與連接和配置有關。
developerWorks: The Spring Series
請務必包括WMQ服務器和客戶端對未來崗位的版本,因爲在Java/JMS配置的細節上有所不同。另外,請務必使用與您正在使用的WMQ客戶端或服務器版本相匹配的文檔版本。
您可能還想考慮在JMS之上使用Spring集成;這裏有一個示例使用ActiveMQ https://github.com/SpringSource/spring-integration-samples/tree/master/basic/jms - 您只需要將JMS配置更改爲使用MQ。
樣品讀取來自控制檯發送通過JMS消息,由消息驅動適配器讀取,並且寫入到控制檯。
感謝您的答覆和鏈接pshere MQ例子。當我downlad它給了我像20個不同的項目,我的cdnt找到需要的例子或既不運行它。我只是想簡單的例子能夠運行 – nepJava
?困惑?鏈接指向GitHub上關於如何運行它的自述文件的示例。簡單地克隆Github示例回購並按照說明操作。 –
我剛剛經歷過這個自己。先從Spring Boot JMS Starter
添加一個bean提供MQQueueConnectionFactory
@Configuration
@EnableJms
public class MQConfiguration {
@Bean
public MQQueueConnectionFactory mqFactory()
{
MQQueueConnectionFactory factory = null;
try {
factory = new MQQueueConnectionFactory();
factory.setHostName("localhost");
factory.setPort(1414);
factory.setQueueManager("QM.LOCAL");
factory.setChannel("SYSTEM.DEF.SVRCONN");
factory.setTransportType(JMSC.MQJMS_TP_CLIENT_MQ_TCPIP);
}
catch (JMSException e) {
System.out.println(e);
}
return factory;
}
}
卸下org.apache.activemq/ActiveMQ的經紀人的依賴,以確保ActiveMQ的不潛行它到底。
添加依賴於com.ibm.mqjms.jar,com.bim.mq.jmqi.jar,dhbcore.jar
運行
- 1. Spring-JMS(Websphere MQ)
- 2. Spring,Websphere,JMS和Eclipselink問題
- 3. IBM WebSphere MQ JMS Jar文件
- 4. WebSphere中的JMS,MQ異常
- 5. 使用JMS的WebSphere MQ
- 6. Websphere MQ JMS - 配置選項
- 7. JMS的WebSphere MQ BytesMessge和TextMessage的
- 8. 的WebSphere MQ 7with春JMS - 無限交付
- 9. ClassNotFoundException:com.ibm.mq.jms.MQConnectionFactory(Websphere MQ 7.5 + spring jms + maven tomcat 7插件)
- 10. 從WebSphere MQ隊列消費期間Spring JMS超時到期
- 11. IBM MQ vs JMS - Spring實現
- 12. JMS與Spring和Webspehre集成的JNDI MQ
- 13. wso2 ESB - websphere MQ JMS丟失連接
- 14. JMS無法連接到WebSphere MQ
- 15. 春JMS到WebSphere MQ連接錯誤
- 16. Spring JmsTemplate&WebSphere MQ - 忽略RECEIVE_TIMEOUT_NO_WAIT
- 17. Websphere MQ使用JMS,閉合連接停留在MQ
- 18. WebSphere MQ是WebSphere AS 8/8.5中的默認JMS提供者嗎?
- 19. 配置WebMethods客戶端以連接到WebSphere JMS(非WebSphere MQ)
- 20. IBM Websphere MQ Monitoring
- 21. Spring MQ JMS重新連接配置
- 22. Websphere JMS部署錯誤
- 23. Websphere + Spring DMLC + MQ -J2CA0045E:爲資源JMS調用方法createOrWaitForConnection時連接不可用
- 24. JMS,MQ-Series,MQ-Queue,MDB
- 25. Websphere MQ和高可用性
- 26. Websphere MQ和版本控制
- 27. Websphere MQ主題和SSL
- 28. WebSphere Camel JMS,spring,taskExecutor,haninging線程
- 29. Mdb Glasswish Websphere MQ
- 30. MQ WebSphere MessageID Woes
我發佈了春季MDP /激活規範/網絡在 http://stackoverflow.com/questions/7390286/whats-the-difference-between-activationspec-and-connectionfactory – user3344338