BlazeDs在JBoss下,使用Xpath時的問題

如果使用BlazeDS,那麼在WEB-INF/lib 下拷入BlazeDs的jar包時可能就會將Blazeds帶的xalan.jar一併拷入,由於JBOSS的類加載機制,如果使用Xpath操作XMl時,會用到xalan,導致多個版本存在,因此會導致出現ClassCastException錯誤,具體如下:

java.lang.ClassCastException: org.apache.xml.dtm.ref.DTMManagerDefault cannot be cast to org.apache.xml.dtm.DTMManager

解決方法只需要將BlazeDs帶來的xalan.jar刪除即可。

對於AS6:如果通過管理界面,創建的數據庫資源名爲Right3,則存放在:
D:\application\jboss-6.1.0.Final\server\default\deploy\Right3-ds.xml

用JAP訪問時,定義persistence 中:
使用:
<persistence>
<jta-data-source>java:/Right3</jta-data-source>
.....
</persistence>
而AS7中則爲:
<persistence>
<jta-data-source>java:jboss/datasources/Right3</jta-data-source>
.......
</persistence>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章