0

を使用して単純な Web アプリケーションを開発およびデプロイするつもりです。

  1. EJB3
  2. JSP とサーブレット
  3. JBoss 7
  4. JPA

アプリケーションをコーディングし、次の構造の標準的な耳を作成しました

現れる

|_ lib (commons ロギングなどの必要なすべての jar を含む)

|_ META-INF

   |_ application.xml

   |_ jboss-app.xml

|_ app_ejb.jar (ステートレス EJB、エンティティ、persistence.xml などを含む...)

|_ app_web.war (jsps、サーブレット、web.xml など)

jboss-app.xml :- (ライブラリはアプリ名です)

<!DOCTYPE jboss-app PUBLIC "-//JBoss//DTD J2EE Application 1.4//EN" "http://www.jboss.org/j2ee/dtd/jboss-app_4_0.dtd">
<jboss-app>
    <loader-repository>library:app=ejb3</loader-repository>
</jboss-app>

アプリケーション.xml :-

<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" version="1.4">

<display-name>library</display-name>

<module>
  <ejb>ejb_library.jar</ejb>
</module>

<module>
    <web>
        <web-uri>web_library.war</web-uri>
        <context-root>web_library</context-root>
    </web>
</module>

</application>

これで、JBoss 7 の管理コンソールでこの耳をデプロイすると、Web モジュールがデプロイされたようで、ページまでヒットします。ただし、サーブレットに EJB を (@EJB を使用してインスタンス変数として) 注入しようとするアプリケーションのさらなる部分は失敗します。

アプリケーションのデプロイ方法に問題があるようです。

JBoss でアプリをデプロイできるチュートリアルを見つけようとしましたが、これまで行き詰まっていました。

誰でもこれで私を案内してもらえますか? 初めて JBoss を使用していますが、JBoss 固有の構成を完全には認識していません。

4

1 に答える 1

0

注入しているEJB、それはインターフェースを実装していますか?そのインターフェースはサーバーに登録されていますか?@Localまたは@Remote。

そうでない場合は、@ Localインターフェースを導入してから、そのインターフェースを実装するEJB実装を導入してみてください。次に、そのローカルインターフェイスを使用してEJB実装を注入します。

また、以下のスレッドを確認してください。

JBoss 6:サーブレットへのEJBの注入

EJBをJAX-RSに注入する(RESTfulサービス)

http://docs.jboss.org/ejb3/docs/tutorial/1.0.0/html/Injecting_EJB_in_Servlets.html

ばかげた考えですが、application.xmlでモジュール宣言を再配置できますか。Webモジュールを最初に持ってきて、それに続いてejbを持ってきてください。

  • モジュール->Webモジュール
  • モジュール->ejbモジュール

さらに、これは状況にも関連しています:http: //docs.jboss.org/jbossas/docs/Server_Configuration_Guide/4/html/ch01s04s02.html

于 2012-06-06T06:34:31.870 に答える