文件上传中struts.xml怎么配置
1个回答
2016-04-03 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517199
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
<constant name="struts.multipart.maxSize" value="1024000"></constant>
<action name="demo" class="action.file.FileUploadAction">
<interceptor-ref name="fileUploadStack">
<param name="maximumSize">1024000</param>
<param name="fileUpload.allowedTypes">
image/gif,image/png,image/bmp,image/pjpeg,image/jpg,image/jpeg
</param>
</interceptor-ref>
<result name="success" type="httpheader">
<param name="status">200</param>
</result>
</action>
补充:只需在<action></action>中加入拦截器引用fileUpload或者fileUploadStack
Xml代码
<interceptor-ref name="fileUpload">
<!-- 配置允许上传的文件类型,多个用","分隔 -->
<param name="allowedTypes">
image/bmp,image/png,image/gif,image/jpeg,image/jpg
,image/x-png, image/pjpeg<o:p></o:p>
</param>
<!-- 配置允许上传的文件大小,单位字节 -->
<param name="maximumSize">102400</param>
</interceptor-ref>
struts2 上传文件时,如果限制了上传的文件类型,当用户上传被限制的类型时,struts默认显示的错误如下:
Content-Type not allowed: file "icudt42.dll" "upload_47e43c5c_1266edfc786__8000_00000002.tmp" application/x-msdownload
但这种显示不是很友好,要自定义该错误,需要做的是:
1 在struts.xml中添加<constant name="struts.custom.i18n.resources" value="struts" />
(不知道为什么)
2 在src下新建struts.properties写上
struts.messages.error.content.type.not.allowed=文件类型不正确
struts.messages.error.file.too.large=上传的文件太大
struts.messages.error.uploading=上传出错
注释:在properties文件中中文是乱码的,要用native2ascii转一下
<action name="demo" class="action.file.FileUploadAction">
<interceptor-ref name="fileUploadStack">
<param name="maximumSize">1024000</param>
<param name="fileUpload.allowedTypes">
image/gif,image/png,image/bmp,image/pjpeg,image/jpg,image/jpeg
</param>
</interceptor-ref>
<result name="success" type="httpheader">
<param name="status">200</param>
</result>
</action>
补充:只需在<action></action>中加入拦截器引用fileUpload或者fileUploadStack
Xml代码
<interceptor-ref name="fileUpload">
<!-- 配置允许上传的文件类型,多个用","分隔 -->
<param name="allowedTypes">
image/bmp,image/png,image/gif,image/jpeg,image/jpg
,image/x-png, image/pjpeg<o:p></o:p>
</param>
<!-- 配置允许上传的文件大小,单位字节 -->
<param name="maximumSize">102400</param>
</interceptor-ref>
struts2 上传文件时,如果限制了上传的文件类型,当用户上传被限制的类型时,struts默认显示的错误如下:
Content-Type not allowed: file "icudt42.dll" "upload_47e43c5c_1266edfc786__8000_00000002.tmp" application/x-msdownload
但这种显示不是很友好,要自定义该错误,需要做的是:
1 在struts.xml中添加<constant name="struts.custom.i18n.resources" value="struts" />
(不知道为什么)
2 在src下新建struts.properties写上
struts.messages.error.content.type.not.allowed=文件类型不正确
struts.messages.error.file.too.large=上传的文件太大
struts.messages.error.uploading=上传出错
注释:在properties文件中中文是乱码的,要用native2ascii转一下
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询