2011-02-10

ORA-24777 發生在 Jee Server

最近用 jpa 搭配 Oracle Database Link Query .用 JPA 搭配 RESOURCE_LOCAL可以執行.
但是, 當程式換成 Session Bean 時會出現. 

ORA-24777:  use of non-migratable database link not allowed.



第一次遇到, google一下....找到解答的網頁 . 

ORA-24777 When Using XA Driver

解答篇中 提出三種解決問題的方法
1. 設定 Oracle Database 支援 multi-threaded server. (這個工程浩大, 網頁也是不建議作)
2. 改變 create database link 語法. (文章中他們是這樣解的, 不過我沒辦法因為 DB 不是我能動的)
3. 改用 non-XA Driver. (這各在我的案例中是唯一的解法, 因為修改自己的東西最簡單)


結論
經過測試, 第三種方式可以解決我的問題, 因為我要的只是Query 並不牽涉到 Transaction. 所以, 只好新增 DataSource for non-XA .

沒有留言:

張貼留言