我正在開發要部署在WebSphere應用程序服務器上的Java EE應用程序。在這個應用程序中,我有一個Web服務,通過它我想將JPA實體對象作爲方法調用的結果。問題來自實體關係產生的循環。使用JAXB和Eclipselink從Web服務方法返回JPA實體Moxy
我已經使用Eclipselink Moxy來解決JPA實體之間的反向引用問題。但是,由於我自己並沒有調用JAXB實現,但是WAS調用它自己,所以@XmlInverseReference註解會被忽略。我不想使用@XmlTransient批註,因爲對於我來說,獲取所有引用的實體作爲方法結果非常重要。
是否可以使用Moxy作爲默認的WebSphere JAXB實現?或者,我可以爲我的實體創建JAXB適配器,然後在運行時添加@XmlTransient註釋?我需要這個,因爲我有方法返回實體引用其他實體,但也返回引用的實體與他們對數據庫關係的來源引用。
非常感謝您的支持swer。執行afterUnmarshal方法的選項對我不起作用,因爲我的編組需要雙向工作,從父到子,反之亦然,這意味着我無法在任何地方使用@XmlTransient。您能否提供關於如何在WebSphere中將Moxy作爲JAXB提供程序安裝的更多信息? – dpesic
@XmlInverseReference批註中存在拼寫錯誤 - 因此不接受少於6個字符的編輯: –
@JacekLaskowski - 感謝您指出錯字,它現在已修復。 –