簡體   English   中英

如何在JBoss SOA 5.x上部署JPA 2應用程序?

[英]How can I deploy JPA 2 applications on JBoss SOA 5.x?

我正在遷移最初在JBoss SOA服務器5.2版上使用EJB3持久性(JPA 1.0)編寫的應用程序,以便它使用來自JPA 2.0(休眠實現)的類型安全查詢和條件查詢。 到目前為止,由於無法找到合適的javax.persistence庫版本,我完全無法部署EAR。 該錯誤表明它找不到類javax.persistence.criteria.Expression。 從我可以看到的是,它是從內置在JBoss中的ejb3-persistence庫中加載javax.persistence類的。 我嘗試了各種方法,這些方法應該使JBoss首先使用應用程序庫,但無濟於事。 任何幫助,將不勝感激。

我嘗試過的方法:

  1. 在jboss-app.xml文件中添加“ <loader-repository>”配置
  2. 將jboss-classloading.xml文件添加到EAR的META-INF文件夾中
  3. 修改ear-deployer-jboss-beans.xml文件以使用隔離的類。

答案是“ jboss-classloading.xml”文件將適用於Web應用程序,但是無法覆蓋已發布的EJB的類加載。 用於發布的EJB的庫在服務器級別必須是唯一的,並且由於JBoss aleady包含一個處理java.persistence。*名稱空間的庫,因此您不能在EJB中使用任何其他版本的JPA。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM