【发布时间】:2015-06-08 09:43:22
【问题描述】:
Struts2出了点小问题,不知道为什么不行……
我想通过 Action 类在两个 JSP 之间传递 2 个变量:
view1.jsp:
<s:form action="myAction">
<input id="var1" name="var1" type="text" />
<input id="var2" name="var2" type="text" />
<button type="submit"> Ok </button>
</s:form>
-> var1 和 var2 是我要传递给 Action 类的变量
struts.xml:
<action name="myAction" class="MyAction" method="execute">
<result name="success">view2.jsp</result>
</action>
Action.java:
public class MyAction extends DefaultActionSupport
{
private String var1;
private String var2;
public String execute() throws Exception
{
// ... Some actions ...
return SUCCESS;
}
// Getters & Setters for var1 and var2 (generated by Eclipse)
public String getVar1()
{
return var1;
}
public void setVar1(String var1)
{
this.var1 = var1;
}
public String getVar2()
{
return var2;
}
public void setVar2(String var2)
{
this.var2 = var2;
}
-> 这可以正常工作;如果我将“System.out.print”与 getter 放在一起,它会向我展示 var1 (content1) 和 var2 (content2) 的良好值
view2.jsp:
Values of var1 = <s:property value="var1" />
Values of var2 = <s:property value="var2" />
Textfield with var1 in default-value : <s:textfield value="%{var1}" />
Textfield with var2 in default-value : <s:textfield value="%{var2}" />
-> 这里有一个问题:
我无法获取 var1 和 var2 的内容!
-> <s:property value="var1" /> 和 <s:textfield value="%{var1} 返回“null”
我的错误在哪里?我不明白...我按照网上其他人所说的...
谢谢!
【问题讨论】:
-
你能给我们你的getter和setter吗?
-
嗨!感谢您的评论我已经编辑了我的消息,其中包含 Getter 和 Setter 的内容
-
你有没有把view2.jsp的代码放在form标签里。喜欢
-
服务器控制台是否出现异常
-
@Anshuman :在 View2.jsp 中,我是这样写的:
<s:form action="myAction"> <s:property value="var1" /> <s:textfield value="%{var1}" /> </s:form>>>> 放在表单标签中也不起作用;我有null值而不是实际值@Code2Interface:我在服务器控制台中什么都没有;我在控制台中得到的唯一结果是:System.out.println("value of var1 = " + getVar1());` 控制台中显示的值是正确的......但它是“null”在 JSP 中
标签: java jsp variables struts2 action