Я рассмотрел несколько вопросов Struts 1 и 2 на SO, но ни один из них, похоже, не отвечает на вопрос с той точки зрения, с которой я смотрю на него.
Я собираюсь начать работу над созданием новой системы, полной переделкой очень старого настольного приложения. Цель состоит в том, чтобы сделать его веб-ориентированным, добавить больше функциональности, сделать его более удобным и т. д. (обычные причины реинжиниринга).
Команда, которая будет разрабатывать систему, в основном состоит из разработчиков Java и много работала над Struts 1.x в течение последних 5 лет.
Система рассчитана на долгие годы, поэтому идея реинжиниринга через 3-5 лет, когда появится лучший фреймворк, не вариант. Он не предназначен для интенсивного использования AJAX.
Мой вопрос: зачем мне переходить на Struts 2, когда моя команда так опытна в Struts 1.x. Я понимаю, что есть некоторые улучшения, но я беспокоюсь, что время, потраченное на подготовку команды к работе, доработки из-за неправильного использования и т. д., намного перевесит любые преимущества, которые мы могли бы получить от Struts 2. Нам нравится Struts 1, он делает то, что мы необходимо это сделать, и все шаблоны проектирования, стандарты, лучшие практики и т. д. на месте.
Есть ли в Struts 2 какие-либо убийственные функции или серьезные проблемы, о которых я не знаю, в Struts 1, которые могут повлиять на решение остаться со Struts 1.