Ответ 1
Хороший вопрос, в первую очередь:)
Развертывание корпоративного приложения на механизм сервлетов является основным сценарием, например, Spring, так что это, безусловно, возможно. Но вы поймете, что Spring - это целая экосистема API и конфигурационных файлов, а не несколько JAR, которые вы просто загружаете на сервер и получаете удовольствие.
Я немного поиграл с Weld и JSF на Tomcat 7, и все получилось неплохо. Но существует большое различие между HelloWorldOnTomcat.java и реальным приложением для реальных клиентов. Я уверен, что вы об этом знаете.
Я бы сказал, что вы сможете составить достойную настройку за относительно короткое время. Ни CDI, ни JSF не будут проблематичными. Но, в зависимости от ваших конкретных требований, вам придется иметь дело с другими аспектами, которые не покрываются готовым Tomcat. Безопасность, кластеризация, отказ, обмен сообщениями, асинхронность, чтобы назвать несколько проблем (и транзакций, как указано в комментариях).
Если вы (более или менее) владеете такими требованиями, и ваш предстоящий проект довольно расслаблен и не должен контролировать следующую миссию Марса - я бы, конечно же, попробовал.
С другой стороны, если вы знаете о таких требованиях, я бы искал (а) настройку на сервере приложений Java EE или (b) еще один стек на Tomcat.