ステートレスであると想定すると、トランザクション/永続スコープは一般に伝播されます。ただし、各メソッドに使用するトランザクション属性 (NOT_SUPPORTED、SUPPORTS、MANDATORY など) と伝播のいくつかのルール (ルール: https://weblogs.java.net/blog/ss141213/archive/ ) を考慮してください。 2006/10/persistence_con.html )。
トランザクション スコープのエンティティ マネージャがトランザクション内から呼び出された場合、トランザクションに関連付けられた永続コンテキストがまだ存在しない場合は、新しい永続コンテキストが作成されます(Enterprise JavaBeans 3.0) 。
したがって、2 つのステートレスにデフォルトの Tx 属性 (REQUIRED) を使用している場合: それらは同じコンテキストを共有するため、1 つのメソッドが失敗するとすべてがロールバックされます。この動作を望まない場合でも、 (REQUIRES_NEW , NOT_SUPPORTED ..) のようなものを使用できます。
トランザクション属性の詳細: http://docs.oracle.com/javaee/6/api/javax/ejb/TransactionAttributeType.html
編集: 複数の EAR の場合、各 EJB にはコンテキスト (一種のクライアント コンテキスト) があり、呼び出された EJB の TransactionAttribute に従って伝播されます。これは、ローカル呼び出しにのみ当てはまります。リモート EJB 呼び出し間で永続化コンテキストを共有できないことに注意してください。