2011-10-04 44 views
0

我正在尋找完整的示例或詳細教程,瞭解如何將Oracle AQ設置爲JMSProvider。我想創建MDB,它將由Oracle AQ中定義的隊列中的消息執行。我使用JBoss AS 5.1和Oracle 11在JBoss5中使用Oracle AQ作爲JMS

================

感謝您的鏈接。我在我的JBoss下添加了Oracle AQ作爲jms提供程序,但是現在我遇到了將隊列中的消息排入隊列的問題。我得到這樣的異常:

2011-10-07 09:18:02,938 INFO [com.sun.genericjmsra:77](http-10.243.0.66-8080-2)無法獲得OracleXA的受管連接 引起通過:javax.resource.ResourceException:JMS-232:Podano niepoprawnegouĹźytkownikalub niepoprawnehasĹodlapoĹÄ

這意味着我有一個不正確的用戶名或/和密碼。該數據是100%好,但也許我以錯誤的方式把它放在配置文件中。

這裏是我的配置的一部分:

<tx-connection-factory> 
    <jndi-name>OracleXA</jndi-name> 
    <rar-name>oracleaq.rar</rar-name> 
    <connection-definition>javax.jms.QueueConnectionFactory</connection-definition> 
    <config-property name="ConnectionFactoryProperties" type="java.lang.String">host=IP_OF_MY_HOST,username=XXXX,password=YYYY,port=1521,sid=TESTAQ,driver=thin</config-property> 
    <config-property name="username" type="java.lang.String">XXXX</config-property> 
    <config-property name="password" type="java.lang.String">YYYY</config-property> 
    <max-pool-size>20</max-pool-size> 
</tx-connection-factory> 

我根據例子,我在一些網站上找到它建成。是否需要輸入用戶名和密碼兩次?我已經對這個配置進行了一些更改,但它沒有解決問題:/

回答

0

了,而不是它

<config-property name="ConnectionFactoryProperties" type="java.lang.String">host=IP_OF_MY_HOST,username=XXXX,password=YYYY,port=1521,sid=TESTAQ,driver=thin</config-property> 

JDBC連接字符串,可以用:

<config-property name="ConnectionFactoryProperties" type="java.lang.String">jdbc_connect_string=jdbc:oracle:thin:XXXX/[email protected]_OF_MY_HOST:1521/TESTAQ,host=IP_OF_MY_HOST,user=XXXX,password=YYYY,port=1521,sid=TESTAQ,driver=thin</config-property> 
0

This post會給你一個關於如何創建隊列的方法。
this one給出設置爲JMS提供者的完整想法。 (在這個博客有可用的帖子有用的職位數)