0

ejb3.1 プロジェクトで、グラスフィッシュを組み込みサーバーとして使用しようとしています。以下は私のmaven依存関係です..しかし、テストを実行すると、ejbモジュールのデプロイに失敗します。javaee.home またはその他の変数を設定する必要がありますか?

<dependency>
            <groupId>org.glassfish.extras</groupId>
            <artifactId>glassfish-embedded-all</artifactId>
            <version>3.1-SNAPSHOT</version>
            <scope>test</scope>
            <type>jar</type>
        </dependency>
            <dependency>
            <groupId>org.glassfish.extras</groupId>
            <artifactId>glassfish-embedded-static-shell</artifactId>
            <version>3.1-SNAPSHOT</version>
            <scope>test</scope>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>6.0</version>
            <scope>provided</scope>
        </dependency>

例外は..

Caused by: org.omg.CORBA.DATA_CONVERSION:   vmcid: SUN  minor code: 214  completed: No
.
.
.
Caused by: java.lang.IllegalStateException: java.lang.RuntimeException: java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key iiop.cannot_find_keyalias
4

1 に答える 1

1

いいえ、glassfish-embedded-static-shell.jar は必要ありません。EJB3.1 のみを使用する場合は、glassfish-embedded-all jar で十分です。ejb3 から jpa データ ソースにアクセスする場合は、クラスパスに domain.xml ファイルが必要です。クライアント コードで EJB コンテナーを作成するときに、プロパティ「org.glassfish.ejb.embedded.glassfish.installation.root」を渡す必要があります (EJBContainer.createEJBContainer(prop) など)。このプロパティの値は、フォルダー名 (例: glassfish) にする必要があります。

フォルダーには、domains\domain1\config\domain.xml ファイルが含まれている必要があります。

Glassfish v3 をダウンロードしてインストールし、インストールからこのファイルをコピーできます。

于 2011-01-27T06:02:42.713 に答える