MVC

Web側ではStrutsMVCしかり、DIコンテナ側では様々な実装パターンしかり、どれもデータと振る舞い分離を促している。

StrutsMVCのどこがデータと振る舞いの分離を促しているのだろうか?

ActionFormがモデルで、Actionに業務ロジックを埋め込めばデータと振る舞いの分離だろ、って?

いや、それMVCじゃないですから。ActionFormはモデルじゃなくてビューだし。