0
我有一個包含2個戰爭文件的耳朵,每個戰爭都包含無狀態的ejb和澤西休息班。接口位於commons.jar文件中。耳結構如下:無國籍的ejb在WAR>包到EAR>本地ejb電話
EAR
-- /lib/commons.jar
-- rest-1.war
-- stateless-ejb-1.java
-- jersey-rest-1.java
-- rest-2.war
-- stateless-ejb-2.java
-- jersey-rest-2.java
我試圖從無國籍的EJB-2使用無狀態的EJB-1 @Inject
註解,但是我在部署的時候得到一個CDI deployment failure:WELD-001408: Unsatisfied dependencies
錯誤。當我在無狀態-ejb-2中使用@EJB時,耳朵被部署,但在調用jersey-rest-2時出現遠程查找錯誤。
這是我的方法調用鏈:
- 球衣休息-1>無狀態的EJB-1:正常工作
- 球衣休息-2>無狀態的EJB-2> stateless- EJB-1:我得到一個ejb-1查找錯誤
我不想因爲一切都打包在同一個耳朵使用遠程EJB調用(我想用@Inject替代@EJB),但它不起作用。
我想,如果我將stateless-ejb-1.java打包到jar中,並將其放在EJB/lib下,它就會工作。但我不想在我的項目中創建一個新模塊,只是將這一個文件打包到單獨的jar文件中。 解決方案是什麼?