問題タブ [jta]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jta - Java 分散トランザクション
コミット済みのトランザクションをロールバックしたいのですが、JTA はこの種の機能をサポートしていますか?
java - Java EE環境でデータベースとファイルシステムのトランザクションを管理するには?
ファイルの属性 (サイズ、更新時間など) をデータベースに保存します。したがって、問題はデータベースとファイルのトランザクションをどのように管理するかです。
Java EE 環境では、JTA はデータベース トランザクションを管理することしかできません。データベースの更新は成功したが、ファイルの操作に失敗した場合、ファイルのロールバック メソッドを作成する必要がありますか? また、EJB コンテナでのファイル操作は EJB 仕様に違反しています。
あなたの意見は何ですか?
java - クラス階層で注入された EntityManager を使用する
次のコードが機能します。
しかし、次の階層では、Glassfish 3.0 (および EclipseLink を使用した標準 JPA アノテーション) の . 行で TransactionRequiredException が発生しpersist
ます。
私の EJB では、共通コードを抽象クラスに集めて、よりクリーンなコードにしました。(update
誰がいつ操作を行ったか、すべてのエンティティがインターフェイスを実装していることも保存します。)
この問題は致命的ではありません。単純にupdate
メソッドをサブクラスにコピーして姉妹化することはできますが、それらすべてを 1 つの場所にまとめておきたいと考えています。
私は試しませんでしたが、これは私の基本クラスが抽象的であるためかもしれませんが、そのような(私見一般的な)ユースケースの適切な方法を学びたいと思います。
java - @Resource UserTransaction と EntityManager.getTransaction() の違いは何ですか
誰でも何が違うのか説明できますか:
と
また、コンテナ管理トランザクションとは何ですか? トランザクションでテーブルに3行を挿入したい場合、セッションファサードでどのように行うべきですか。
java - Tomcat 6 で Hibernate の JTA サポートを使用するには?
彼らは、Java EE 環境で JTA トランザクション サポートを使用することを推奨しています。
しかし、Hibernate セッションがそれを使用できるように、Tomcat6 で JTA を構成する方法は?
バージョン 3.0.1 以降、Hibernate は
SessionFactory.getCurrentSession()
メソッドを追加しました。当初、これは JTA トランザクションの使用を想定しており、JTA トランザクションは現在のセッションのスコープとコンテキストの両方を定義していました。多数のスタンドアロン JTA TransactionManager 実装の成熟度を考慮すると、J2EE コンテナにデプロイされているかどうかに関係なく、すべてではないにしてもほとんどのアプリケーションで JTA トランザクション管理を使用する必要があります。それに基づいて、JTA ベースのコンテキスト セッションだけを使用する必要があります。
( Hibernate Reference Documentation | Architecture. Contextual Sessions )
java - セッション/トランザクションのサポートに最適な Tomcat6 JNDI + Hibernate 構成
hib公式ドキュメントからの引用:
バージョン 3.0.1 から、Hibernate は SessionFactory.getCurrentSession() メソッドを追加しました。当初、これは JTA トランザクションの使用を想定しており、JTA トランザクションは現在のセッションのスコープとコンテキストの両方を定義していました。多数のスタンドアロン JTA TransactionManager 実装の成熟度を考えると、J2EE コンテナにデプロイされているかどうかに関係なく、すべてではないにしてもほとんどのアプリケーションで JTA トランザクション管理を使用する必要があります。それに基づいて、JTA ベースのコンテキスト セッションだけを使用する必要があります。 引用の終わり
Tomcat6 をサーブレット コンテナーとして使用しており、Hibernate 3.2 をプロジェクトに統合する必要があります。
JNDI を使用して SessionFactory ルックアップを構成する方法に関するドキュメントを見つけましたが、期待どおりには機能しません。
引用: Hibernate は、JTA を使用するすべての環境で動作します。実際、JTA は標準の Java トランザクション インターフェイスであるため、可能な限り JTA を使用することをお勧めします。引用終わり。
休止状態の構成では、 current_session_context_class = jta を示します
そして今、「TransactionManagerLookupが指定されていません」というエラーが表示されます。
問題は、Tomcat が JTA をサポートしていないことです。それを機能させるには、正しく理解している場合、JOTM またはその他のライブラリを Tomcat に追加する必要があります。
しかし、引用によると、JTAの使用が推奨されています。
この状況であなたは何をお勧めできますか?
java - hibernate で使用するカスタム JTA XAResource を実装する
データベースへの 2 つのレベルのアクセスがあります。最初は Hibernate で、2 番目は JDBC で。JDBC レベルは非トランザクション テーブルで動作します (速度を上げるために MyISAM を使用しています)。トランザクション内で両方のレベルが機能するようにしたい。分散トランザクションを管理できる JTA について読みました。しかし、カスタム リソースの実装方法と使用方法に関する情報がインターネット上に不足しています。
カスタム XAResources を使用した経験のある人はいますか?
transactions - Bean管理トランザクションを使用したコミットエラーの処理をJavaEE5で定義しますか?
GlassFish2.1および2.1.1を使用しています。
で注釈が付けられたBeanメソッドがある場合@TransactionAttribute(value = TransactionAttributeType.REQUIRES_NEW)
。いくつかのJPA処理を実行した後、JTSのafterCompletion-Phaseでコミットが失敗します。
GlassFishはこの失敗のみをログに記録します。そして、このBeanメソッドの呼び出し元は、何かがうまくいかないことを知る機会がありません。
したがって、JavaEE5サーバーがコミット中に例外を処理する方法についての定義があるのではないかと思います。実行時の例外が発生すると思います。
ステートレスBeanを使用しています。SessionSynchronisationを使用すると、statefull Beanを使用すると、コミットが失敗する可能性があります。インターフェイスで宣言した例外をスローできるように、インターセプトすることは可能ですか?
これは、例外スタックトレース全体です。
java - JTA をサポートする NoSQL DB を探しています
JTA トランザクションをサポートする、信頼性が高くよく知られている NoSQL DB はありますか? 私のアプリケーションでは、一部のデータを RDBMS DB に保存し、一部のデータを NoSQL DB に同じトランザクションで保存する必要があり、RDBMS トランザクションに JTA を使用しています。