アクションの粒度
アクションは機能単位で作成し、フォーム (Dto) も必ず対で作成。のためか思ったより肥大化せず。フォームはセッションスコープ固定で、メニューなどでセッションから削除。各業務画面では完了画面への遷移時にエンティティなどの大きなオブジェクトのみ削除。index メソッドではフィールドをすべて null 化するユーティリティメソッドで対応。あと、ロジックもアクション単位で空でも 1 つ必ず作成します。
アクションからロジックに切り出す指標は何かというと、メソッド分割したいならロジックに書きます。つまりアクションには @Execute が付くメソッドのみとし、private メソッドは書かないようします。