我使用了affuse框架工作创建了动作类和jsp。但问题是,当我在jsp fReleaseList.jsp中按下add按钮时,我正在使用重定向exmple重定向到动作类是FReleaseAction.java并初始化实例变量“fRelease”并重定向到fReleaseForm.jsp并且当按下保存按钮时它agin重定向到同一个动作类 FReleaseAction.java和那里的“fRelease”变量将为null。此配置文件如下所示,
/WEB-INF/pages/fReleaseList.jsp
<action name="editFRelease" class="com.vxl.appanalytix.webapp.action.FReleaseAction" method="edit">
<result>/WEB-INF/pages/fReleaseForm.jsp</result>
<result name="error">/WEB-INF/pages/fReleaseList.jsp</result>
</action>
<action name="saveFRelease" class="com.vxl.appanalytix.webapp.action.FReleaseAction" method="save">
<result name="input">WEB-INF/pages/fReleaseForm.jsp</result>
<result name="cancel" type="redirectAction">fReleases</result>
<result name="delete" type="redirectAction">fReleases</result>
<result name="success" type="redirectAction">fReleases</result>
</action>
<!--FReleaseAction-END-->
答案 0 :(得分:1)
是。除非您在表单中使用该变量,否则Struts不会返回该值。 要重新发送值,您需要在jsp页面中设置HiddenVariable
简单来说,如果你有这样的文本框 生成JSP页面时,struts会生成一个隐藏变量,当您提交表单时,隐藏的变量数据将被转换并存储/映射到Bean数据。
如果你没有在jsp页面中使用Bean变量,Struts不会为它生成隐藏变量类型,因此当它转到Action类时,它将创建新的bean并且不设置旧的bean数据。