2017-03-23 37 views

回答

0

您可以在Wildfly上運行的應用程序中使用RabbitMQ JMS Client

您只需生成一個RabbitMQ JMS ConnectionFactory和Destination對象,手動使用CDI生產者(如果您的應用程序是JEE),或者通過自1.7.0版本的RabbitMQ JMS客戶端的JNDI綁定配置生成。

對於Wildfly JNDI綁定配置,您可以查看RabbitMQ JMS Client文檔和Wildfly Naming Subsystem configuration

然後,您可以在應用程序中使用@Resource注入JMS連接工廠和目標對象。請注意,您也紛紛把JMS客戶端的lib,如果你想註冊消息監聽器在Wildfly global-modules

最後宣佈JBoss的模塊中,你可以嘗試做手工,通過創建實現JMS MessageListener接口聽衆和註冊聽衆在setMessageListener方法(加上CDI管道)的幫助下手動到RabbitMQ隊列。事實上,現在不可能在當前版本的RabbitMQ JMS客戶端中使用消息驅動Bean。有關詳細信息,請參見this post。 但是我不知道這最後一個人是否會在Wildfly(待測試)工作或沒有,因爲每次的Javadoc此方法將拋出JMS異常:如果JMS提供者不能設置的MessageConsumer的消息監聽的

由於下列原因之一:發生內部錯誤或者此方法被調用在Java EE Web或EJB應用程序(雖然它不能保證一個例外是在這種情況下拋出)

而且,也許這Wildfly最適合使用WEB配置文件,而不是Java EE 7完整配置文件?

相關問題