Ваш вопрос не очень ясен, но если вы хотите передать некоторые параметры от вашего первого действия ко второму действию, используя redirectAction
, все, что вам нужно создать в первом действии (действие A) и при настройке второго Действие (Action B) вы должны сказать S2, что вы хотите, чтобы передать эти параметры к действию B.
<action name="a" class="ClassA">
<!-- Redirect to another namespace -->
<result type="redirectAction">
<param name="actionName">B</param>
<param name="param1">${param1}</param>
<param name="param2">${param2}</param>
// any other parameters
</result>
</action>
ключевым понятием здесь является использование ${param1}
для передачи динамических параметров в конфигурации, это будет выглядеть, чтобы параметр с именем param1
в стек значений и будет заменен его значением во время выполнения.
Удостоверьтесь, что у вас есть те параметры, которые вы хотите передать вашему действию B в своем действии A, с помощью получателей и сеттеров, чтобы S2 мог выбрать их во время выполнения.
Нет, если вы хотите передать статические параметры конфигурации, все, что вам нужно сделать, как
<action name="a" class="ClassA">
<!-- Redirect to another namespace -->
<result type="redirectAction">
<param name="actionName">B</param>
<param name="param1">param1</param>
<param name="param2">param2</param>
// any other parameters
</result>
</action>
Не здесь параметры передаются в param1
и не ${param1}
Спасибо Umesh, я попытался что, но это действительно не сработало ... Вот сложная часть ... То, что я пытаюсь сделать здесь, на самом деле, результат действия B на самом деле является ссылкой, которая является кликом d из действия A Поэтому в действии A у меня есть этот URL-адрес href, который выглядит следующим образом: ActionB? param1 = param1Val & param2 = param2Val & param3 = true & param4 = 0; Но все эти параметры: ** param1 = param1Val & param2 = param2Val & param3 = истина и param4 = 0; ** устанавливаются из действий A перед передачей в к действию B. Так что, если я использую методы приводится в действие А, Я быть в состоянии получить их в действии B? –
нет, эти значения не будут доступны в вашем действии B, если вы используете 'redirectAction', только способ либо сохранить их в сеансе, либо получить их в вашем действии B, либо передать их в качестве строки запроса в действие B и fetes значения из запроса строка в действии B. –