Java EE は初めてで、JBoss 7 を使用して最初のプロジェクトを作成しています。私のワークスペースには、EAR プロジェクト、EJB プロジェクト、WEB プロジェクト、および JPA プロジェクトがあります。EJB プロジェクトで作成された ejb は、JPA プロジェクトで作成された ejb を使用したいと考えています。すべて正常にコンパイルされますが、EAR プロジェクトをデプロイすると、次の例外が発生し、デプロイが失敗します。主な例外の原因は次のとおりです。
JBAS014544: com.kohlisoft.stockmanagement.ejb.main.StockManagementService/sms をバインドするためのタイプ 'com.kohlisoft.stockmanagement.jpa.service.StockManagementBeanJpa' のインターフェースを持つ EJB が見つかりません
EJB プロジェクトが jpa jar 内のクラスを参照できないと思われます。
私はそれを整理するためにさまざまなリンクをたどりましたが、助けにはなりません。いくつかの提案に基づいて修正しましたが、まだ喜びはありません。1. 構造を確認すると、JPA プロジェクトは .ear の lib フォルダーの下にあります。2. EJB プロジェクトのマニフェスト ファイルを更新して、依存関係を jpa jar に追加しました。
ここで何か助けていただければ幸いです。
JPA プロジェクトの EJB。
@Stateless
@LocalBean
public class StockManagementBeanJpaBean implements StockManagementBeanJpa {
@PersistenceContext(unitName="StockManagement")
private EntityManager em;
それを使用する EJB プロジェクト内の EJB:
@Stateless
@LocalBean
public class StockManagementService implements StockManagementServiceLocal {
@EJB
StockManagementBeanJpa sms;
...
EJB プロジェクト MANIFEST ファイル。
Manifest-Version: 1.0
Class-Path: StockManagement-ejbClient.jar
Dependencies: lib/StockManagement-jpa.jar
.ear 内の .jars と .war の構造は次のとおりです。
.ear
|____ ejb.jar
|
|____ ejbClient.jar
|
|____ web.war
|
|____ /lib
|
| ____ jpa.jar
|
| ____ all other jars related to derby client, hibernate, jta etc.
他に必要なファイルがあれば教えてください。