で、Strutsは何が嬉しい?

と、自問自答してみた。

基本的な処理フローを担ってくれる

開発者はアクション、アクションフォーム、JSPなどを作って配置し、xmlに設定を書くだけで、フレームワークが勝手に呼び出してアプリが動いてくれる。
コントローラ→アクション→JSP or ファイルUP/DOWN みたいな感じで。
例外処理も例外クラスごとに設定できたり。

パラメータをオブジェクトに詰め替えてくれる

リクエストパラメータを、エンコードなどもしつつオブジェクト(ActionForm)に詰め替えてくれる。

バリデーションも設定すればやってくれる

便利なユーティリティも用意してくれている

taglibやutilなど。