Struts это front-end MVC framework.
Действия Struts2 - это контроллеры (C из MVC) и не должны использоваться в качестве компонентов; они должны вместо этого переносить bean-компоненты из базовых бизнес-слоев в View (V из MVC, например JSP).
У вас не должно быть действия с 50 атрибутами, вы должны иметь действие с несколькими атрибутами, которые являются POJO с 50 атрибутами внутри.
Для Struts2 у вас может быть все, что работает на бизнес-уровне, например Java EE (EJB 3, JPA 2, CDI и т. Д.) Со всеми его компонентами и областями, или Spring, или что-то еще.
Действия Struts2 являются потокобезопасными, инстанцируемыми по запросу, и именно так оно изучается для работы. Не пытайтесь изменить области действия, чтобы использовать их как фасоль, попытаться узнать, какие действия и как их использовать.
Sidenote: если у вас есть свободный выбор, я бы предложил Struts2 + Java EE> = 6 + Struts2-CDI-plugin + Struts2-Convention-plugin + Struts2-Json-plugin, запускаемый с Maven и созданный с помощью Архетип Maven.
Вы можете узнать больше о областях [здесь] (http://stackoverflow.com/a/27670618/573032) –
[This] (http://stackoverflow.com/a/20458850/573032) Ответ также о но (но не одобрен). Относительно вашего ответа * Struts использует область запроса по умолчанию *. –