![](/img/trans.png)
[英]after enctype="multipart/form-data" request not working
[英]Struts 1 Losing Request Parameters after Failed Form Validation with Multipart/Form-Data Enctype
我有一个简单的Struts表单。 它具有几个文本字段和一个文件字段。 enctype
是我表单上的multipart/form-data
。 我在actionform
的validate方法中进行验证。 如果文本字段为空,则返回要求的错误。 与可见字段一起,我传递了一些隐藏字段,这些表单在处理表单并返回给JSP时作为请求参数而需要。 JSP需要这些请求params
。
当没有验证错误时,一切都很好,因为在操作中使用ActionRedirect
类可以返回请求params
。 但是,如果返回错误,我将丢失请求params
。 (我可以在actionform
验证方法或action中访问它们)。
如何确保在验证错误时以multipart
形式返回请求params
? 有什么解决方法吗?
以下是动作映射(为混淆而略作编辑):
<action
path="/saveQuestion"
type="blahblahblah.QuestionAction"
parameter="save"
name="QuestionForm"
input="populateQuestion.do"
scope="request"
validate="true">
<set-property property="cancellable" value="true"/>
<forward name="success" path="viewSurvey.do" redirect="true"/>
</action>
<action
path="populateQuestion"
type="blahblahblah.QuestionAction"
parameter="populateRequest"
name="ItemForm"
scope="request">
<forward name="success" path=".editing.Question"/>
</action>
而我的JSP表格行:
<html:form styleId="QuestionForm" action="/saveQuestion" enctype="multipart/form-data" method="POST">
我相信您可以通过两种方法解决此问题:
我希望这会有所帮助。 我的旧代码文件中可能还有其他建议,但现在无法访问它们。 如果有时间,我稍后再检查。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.