У меня есть класс действия, в котором я передаю значение из jsp, а затем изменяя это значение в классе действий 1, а затем из-за цепочки действий вызывается другое действие2. В действии 2 я получаю исходное значениеstruts 2 Цепочка действий, получающая разные значения одного и того же объекта
value= 100// in jsp action 1: value*10= 1000// action 1 go to action 2
Я хочу измененное значение для перехода к действию 2 i.e. 1000//
значение модифицирована в действии 1. но я получаю 10// i.e. original value.
вы можете мне сказать, что сделать для того, чтобы использовать значение, полученное от действия 1.
struts.xml
<action name="action1" class="vaannila.action.action1">
<result name="success" type="chain">action2
</result>
</action>
<action name="action2" class="vaannila.action.action2">
<result name="success" type="dispatcher">result.jsp
</result>
</action>
действие 1
public class action1 extends ActionSupport implements SessionAware{
public String execute() throws Exception{
System.out.println("original"+ pSB.getvalue()); // getting 10
pSB.getvalue((pSB.getvalue()*10));
System.out.println("modified"+ pSB.getvalue()); // getting 100
return "success";
}
}
действие 2:
public class action2 extends ActionSupport implements SessionAware{
public String execute() throws Exception{
System.out.println("original"+ pSB.getvalue()); // getting 10 instead of 100.
return "success";
}
}
Существует опечатка здесь: 'pSB.getvalue ((pSB.getvalue() * 10));' должно начинаться с ума h 'pSB.setvalue', но это было только в том, чтобы создать вопрос, потому что значение не будет равно 100 на следующей строке ... также раздражает видеть частичные действия. Это я ХОТЯ, чтобы видеть геттеры и сеттеры на обоих действиях. Это, наверное, что-то простое, поэтому вырезать и вставить, иначе люди будут видеть глупые опечатки и скажут вам, что это причина ошибки. – Quaternion