Вы использовали слово «вперед», но похоже, что вы хотите перейти на новую страницу (address.html), чтобы собрать больше информации об адресе. В этом случае вам необходимо перенаправить на страницу адреса после завершения действия пользователя.
<action name="user" class="UserAction">
<!-- Redirect to another namespace -->
<!-- for Struts 2.2 --> <result type="redirectAction">
<!-- for Struts 2.0 <result type="redirect-action"> -->
<param name="actionName">collect-address</param>
<param name="userId">${userId}</param>
</result>
</action>
Синтаксис $ {userId} вызовет getUserId для вашей UserAction и передаст этот параметр, как показано в вашем вопросе: addressForm.html? User_id = X. Аргумент collect-address может иметь успешный результат, который идет в addressForm.html. Документы здесь. Если вы хотите избежать использования другого действия, вы можете попробовать , используя result type = "redirect" и пропустить все таким образом.
Если вы действительно хотите переслать, вы можете использовать цепочка действий . Это обескуражен Тедом Хастедом из команды Struts2 , но это может сработать для вас.
Вместо цепочки действий попробуйте объединить весь код для выполнения этого запроса в одном действии и использовать вспомогательные классы или классы обслуживания для User и Address для разделения и повторного использования кода вместо «цепочки действий».