チケット注文用のステートフル EJB があります。ユーザーがチケットを選択しても支払いをしない場合、特定の期間、たとえば 10 分間保持される機能を実装したいと考えています。そのため、ユーザーがチケットの選択を送信すると、利用可能なチケットのデータベースから削除されるように実装しました。ここで、タイムアウト時に支払いが行われたかどうかを確認し(データベースを介して可能です)、そうでない場合はそれらのチケットをデータベースに返すタイマーを設定する必要があります。
チケットの順序で ejb を使用しますが、これはステートフルであり、EJBTimer サービスはステートフル Bean をサポートしていません。どのようにそれを行うことをお勧めしますか?
タイムアウトを処理する使命を別のステートレス Bean に委任することは可能ですか? この場合、タイマーを作成するメソッドと @Timeout で注釈が付けられたメソッドのみが含まれます。選択したチケットに関するすべての詳細をステートレス Bean に渡す方法がわかりません。これは、Bean プロパティとして保持できないためです (Bean がステートレスであることが原因)。タイマーを作成するメソッドにのみ渡すことができますが、タイムアウト時に呼び出されるメソッドで使用する必要があります。
PS私はグラスフィッシュ3.1を使用しています
助けてくれてありがとう。