問題タブ [ejb-passivation]

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.

0 投票する
1 に答える
1497 参照

jakarta-ee - セッション スコープのマネージド Bean パッシベーション

JSF2 と Managed Beans について読んでいます。パッシベーションについて質問です。

私は最近、@StatefulEJB のさまざまな使用例@SessionScopedを求めまし@ManagedBeanた。

sessionscoped マネージド Bean とステートフル ejb の比較

現在、ステートフル EJB はパッシベーションとアクティベーションに適格です。これにより、一時的に永続ストレージにパッシベートして、アイドル時のメモリ使用量を減らすことができます。マネージド Bean でこの機能を利用できるのは見たことがありません。@RequestScopedそのため、マネージド Bean を使用し、@Stateful代わりにショッピング カートなどには EJBを使用する必要があるのではないかと考えました。@Sessionscoped管理対象 Beanを使用して、最小限のユーザー情報を保存します。

これは正しいです?これに関するガイドラインはありますか?

0 投票する
1 に答える
7654 参照

java - EJB Bean パッシベーション

ejbPassivate()呼び出されると、ステートフル セッション Beanは通常削除されますが、エンティティ Beanステートレス Beanはプールされます。つまり、パッシベーションには適用できません。

別の記事で、アクティブ化とパッシベーションはステートフル セッション Beanエンティティ Beanにのみ適用できると読みましたが、これはエンティティ Beanステートレス Beanがプールされているという主張とは対照的です。

パッシベーションはどの Bean に適用され、適用すると実際に何が起こるのでしょうか?

0 投票する
2 に答える
260 参照

jakarta-ee - アクティベーションとパッシベーションは、デシリアライゼーションとシリアライゼーションと同じ概念ですか?

私は EJB を扱ったことがありません。EJB のコンテキストで「アクティベーション」と「パッシベーション」という用語を時々耳にします。おそらく、これらの用語は通常の POJO オブジェクトにも同様に適用できます。

これら 2 つの概念は、それぞれ非シリアル化とシリアル化の概念の別の名前ですか、それともこれ以上のものがありますか?

0 投票する
0 に答える
555 参照

wildfly - wildfly で、EJB3.2 固有の「passivationCapable=false」を使用せずにステートフル Bean パッシベーションを無効にする方法

クラスターをセットアップしました。プロジェクトで EJB 3.1 を使用しています。どうにかしてステートフル セッション Bean のパッシベーションを無効にすることはできますか?

0 投票する
1 に答える
1453 参照

java - ステートレス Bean の参照が原因で、ステートフル Bean のパッシベーションが失敗する

Weblogic 12c (具体的には 12.1.3) を使用して (EJB 3.1) アプリケーションをデプロイしています。

私のアプリケーションには、およびアノテーションをそれぞれ使用して注入されたおよび他のBean@Statefulへの参照を保持する Bean があります。EntityManager@Stateless@PersistenceContext@EJB

私の問題は、ステートフル Bean がパッシベーションされてディスクにシリアル化されているときに、Weblogic がステートレス Bean への参照もシリアル化しようとし、WeblogicNotSerializableExceptionによって注入された Bean のプロキシへの参照をスローすることです。比較のために - EntityManager 参照はパッシベーションされ、まったく問題なく再アクティブ化されます。問題を引き起こすのはステートレス Bean だけです。

メソッドを定義@PrePassivate@PostActivateてコードを機能させることができることはわかっていますが、コンテナがステートレス Bean の参照を独自に処理できるようにする方法はありますか?

問題を再現するサンプルコードを添付します。

リモート Bean インターフェース:

ステートフル Bean の実装:

NoState ローカル インターフェイス:

NoState Bean の実装:

そして最後に、 PassivateBean がディスクにパッシベートされているときに発生する例外:

0 投票する
1 に答える
1833 参照

jakarta-ee - @PrePassivate および @PostActivate アノテーションが役立つのはいつですか?

@PrePassivateすべての EJB チュートリアルでおよびアノテーションを見てきました@PostActivateが、それらがどのように役立つかわかりません。それらが必要なシナリオは何ですか?