2011-02-14 3 views
2

私はちょっと遊んだSpring Roo、今、私はRooが提案した方法、またはオブジェクトの更新後にアクションをトリガーするベストプラクティスの方法について尋ねています。Spring Roo:更新時のトリガーアクション - ベストプラクティス

は私が例でそれを説明してみましょう: 私はウェブベースのバグトラッカーを実装するとし(私はこれを行うにはしたくない、それが唯一の例です)。バグトラッカーは、問題についてです。各問題には、状態(新規、確認済、割り当て済み、進行中、解決済)、タイトルおよびその他のフィールドがあります。

ユーザーは、すべてのフィールド(状態、タイトルなど)を入力して更新できるWebフォームを持っています。問題の状態が '進行中'から '解決済み'に切り替わると、システムはバグに関心のあるすべての人に電子メールを送信する必要があります(この問題の対象者のリストはどのように維持されているかはこの問題の対象外です) 。

問題は:(Rooアプリケーションで)状態が変更されたときに電子メール送信プロセスをトリガーする方法はありますか?いくつかの問題があるため、

  • 問題の状態が変更されているかどうかを確認する方法はありますか。
  • 他の値が保証されていないため、問題のsetState()メソッドにトリガーを入れるなど、問題が完了した後に送信されるメッセージが更新されないようにする必要があります
  • フォームが有効で問題が保存されている場合のみメールを送信する必要があります(トランザクションがコミットできないという問題に直面しません) - これは)別の問題になります

誰でもいい、テスト可能(ユニットテスト)と保守性ソリューションを持っています保守性は、特にコードトンことを意味します?これはいくつかのコントローラーで使用され、いつか誰かが新しいコントローラーを実装し、彼はこの電子メールの問題を処理することを忘れてしまうので、コントローラーに配置しないでください。

+0

@skaffman:なぜあなたは春のタグを削除します:それは春に関連する質問ですか? – Ralph

答えて

関連する問題