2

Apache の DeltaSpike を使用して Jetty でトランザクションをセットアップしようとした人はいますか? CDI を使用し、JTA データ ソースを持つ Jetty で実行しようとしている Web アプリケーションがあります。トランザクション マネージャーが挿入されておらず、null であるため、エラーが発生します。deltaspike jpa jar を含め、以下のリンクの指示に従いましたが、今のところ機能していません。Hibernate クラスの奥深くでデバッグすると、JTA が構成されていないかのように、私の構成がデフォルトで NOJTAPlatform になっていることがわかります。

どんなアイデアでも大歓迎です。

    <dependency>
    <groupId>org.apache.deltaspike.modules</groupId>
    <artifactId>deltaspike-jpa-module-impl</artifactId>
    <version>0.5</version>
</dependency>

DeltaSpike 構成へのリンク:

http://deltaspike.apache.org/jpa.html

persistence.xml で指定されているデータ ソース:

<persistence-unit name="database" transaction-type="JTA">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <jta-data-source>jdbc/myDS</jta-data-source>
    <properties>
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
        <property name="hibernate.archive.autodetection" value="class"/>
        <property name="hibernate.id.new_generator_mappings" value="true"/>
    </properties>
</persistence-unit>
4

1 に答える 1

1

Jetty で使用している CDI 実装はどれですか?正しく構成されていますか?

簡単なインジェクションを試して、一般的な CDI インジェクションが機能していることを確認してください。

コア デルタ スパイクの依存関係 deltaspike-core-api および deltaspike-core-impl を必ず含めてください。

CDI のセットアップ方法によっては、deltaspike-cdictrl-api と特定の cdictrl api も必要になる場合があります。

詳細はhttp://deltaspike.apache.org/documentation.html#configuration-of-deltaspike-coreを参照

于 2014-02-08T11:37:40.883 に答える