Миграция со Struts 1.2 -> Struts2 против Spring-MVC (в первую очередь в отношении поддержки библиотеки тегов Struts1.2)

Основной вопрос: если мое приложение В НАСТОЯЩЕЕ ВРЕМЯ использует Struts 1.x - и я рассматриваю возможность перехода на ЛИБО Spring -MVC или Struts2 для MVC-framework - есть ли что-нибудь в одном из них, что упростило бы переход со Struts1.2?

Чтобы уточнить, я НЕ спрашиваю, лучше ли SpringMVC или Struts2 в целом (есть ряд существующих Q на SO, которые обращаются к этому) - только на какой из них легче перейти со Struts1.2.

То, что меня больше всего интересует с точки зрения миграции: возможность продолжения (в начале) использования библиотеки тегов struts1.x на страницах JSP при переходе на API Struts2 (или SpringMVC). на бэкэнде. (Другими словами, может ли какая-либо из этих сред поддерживать taglib Struts1.x как плагин)? [Примечание: это не является долгосрочным решением, но уменьшит боль при интеграции, поскольку не нужно будет немедленно переписывать JSP. Я полагаю, что этот вопрос имеет смысл - если нет, объясните, пожалуйста, почему]

С учетом сказанного, меня, конечно, интересуют любые другие преимущества миграции.


Немного предыстории:

Я работаю над приложением, уровень MVC которого написан через Struts 1.2.Мы также используем Spring IOC, хотя в настоящее время приложение не имеет тесной интеграции между слоем Struts и средствами DI Spring. (Примечание: это то, что мы планируем исправить при рефакторинге, но я понимаю, что с небольшим планированием - это можно сделать правильно / эффективно даже при использовании комбинации Spring IOC + Struts2.)

В рамках улучшения / рефакторинга кодовой базы - мы хотели бы перейти на более современную платформу MVC (чтобы исключить необходимость в классах Action / Form и использовать конфигурацию на основе аннотаций, когда это возможно, и т. Д.), Но сохраните общую классику -MVC style (т.е. в настоящее время не заинтересован в переходе на JSF, Tapestry, GWT, Flex, Play и т. Д. Я понимаю, что это очень разные вещи - объединить их вместе, чтобы дать общее представление ..) Кроме того, хотелось бы пойти с чем-то с разумной тягой / динамикой - поэтому мы исключаем Stripes по этой причине. Похоже, что это оставляет только Spring-MVC и Struts2 в качестве претендентов (хотя, если есть что-то еще с аналогичным стилем и с сильным влиянием в отрасли - мы, безусловно, рассмотрели бы это)

. Очевидно, что переключение на любой из них потребует объем работы снижается, но мы планируем сделать ее на модульном уровне. По этой причине, если бы какой-либо из них поддерживал taglib Struts 1.2 - это значительно упростило бы переключение / тестирование (поскольку мы могли бы затем закодировать реализацию «Control» конкретного модуля в новом API - и позволить второму серверу запускать старый Struts1 .2 с использованием того же jsps.Тогда QA-тестирование будет в некотором смысле «от яблока к яблоку». Имеет ли это смысл, или этот подход (если он вообще возможен) приведет к большему количеству головной боли, чем он разрешит?

Кроме того, как указано выше, в то время как мой основной вопрос касается запуска taglib struts1.2 с Spring-MVC или Struts2 - Меня также интересуют любые другие преимущества МИГРАЦИИ для Struts2-vs-Spring-MVC.

11
задан linuxbuild 1 February 2011 в 12:09
поделиться