2013-02-15 46 views
0

我對整個Java EE EJB概念相當陌生。我已經完成了對EJB的研究,但還沒有找到解決我的問題的方法。兩個EAR和第三方jar庫之間的EJB類依賴關係

情景:

我有EAR 1和遠程EJB 2上EAR 2其中EJB 2具有給第三方庫(XXX.jar)的參考遠程EJB 1。 EJB1中的方法將通過它的bean接口調用EJB2中的方法,該接口將輸入發送到第三方庫中的方法以供進一步處理。結果將通過反向EJB1遠程方法反饋給EJB1。

我的問題是,當我將包含EJB2的遠程接口的類庫(EJB2.jar)添加到EJB2項目的類路徑。 EJB1項目還包含第三方jar,因爲它位於EJB2.jar中。我怎樣才能避免這種情況?第三方jar應該只添加到EJB2項目類路徑中。

+0

約7年前,J2EE已升級到Java EE。你真的在使用傳統的J2EE嗎?什麼版本? – BalusC 2013-02-15 00:17:43

回答

0

我不確定如何打包所有東西,但不應該用EJB 2客戶端jar打包第三方庫/類。因此,從這個小的信息我會假設你有:

 
EAR 1 
|_lib 
| |_EJB2Client.jar 
| 
|_EJB1.jar 

EAR 2 
|_lib 
| |_Thirdparty.jar 
| |_EJB1Client.jar 
| 
|_EJB2.jar 

所以我不認爲你有一個問題,即EAR1/EJB1將有第三方罐子的參考。如果我正確理解你的問題。聽起來很腥,可能是你如何擁有一切包裝。如果您需要遠程EJB,則應將所有客戶端類放入EJB-Client jar中。另外請記住,如果您在同一個JVM中運行,則不需要使用遠程EJB。