我在Internet Explorer中遇到Word文件(.docx,.doc)的Struts 2文件上传问题。它在Chrome和Firefox中运行良好,但我不确定我在IE中缺少什么。 我正在使用IE9。 我感谢你的建议。
<action name="saveOrUpdateUser" method="saveOrUpdate"
class="com.adaptivsol.action.UsersAction">
<interceptor-ref name="defaultStack">
<param name="fileUpload.maximumSize">104857600</param>
<param name="allowedTypes">
text/plain,
application/word,
application/msword,
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,
application/vnd.openxmlformats-officedocument.wordprocessingml.document
</param>
<param name="allowedExtensions">doc,docx,txt</param>
</interceptor-ref>
<result name="success">./pages/login/register.jsp</result>
<result name="input">./pages/login/register.jsp</result>
<result name="error">./pages/login/register.jsp</result>
</action>
答案 0 :(得分:0)
您的参数错误,其中两个缺少fileUpload.
前缀,它们必须是:
<param name="fileUpload.allowedTypes">
text/plain,
application/word,
application/msword,
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,
application/vnd.openxmlformats-officedocument.wordprocessingml.document
</param>
<param name="fileUpload.allowedExtensions">doc,docx,txt</param>
顺便提一下,在struts.xml中将devMode
设置为true,并在此处发布文件上传停止工作的日志。我们需要看到错误,警告,信息,以及了解错误的原因。
此外,在您的JSP中添加actionerrors, actionmessages和fielderrors打印功能,并在此处报告您收到的消息。