准备上传doc与xls格式的拦截器
准备上传doc与xls格式的拦截器
<action name="upload_*" class="com.lyc.action.UploadAction" method="{1}">
<param name="savePath">/upload</param>
<result name="notice" type="redirectAction" >
<param name="actionName">/admin/admin_notice</param>
</result>
<result name="photo" type="redirectAction" >
<param name="actionName">/admin/photo_photo</param>
</result>
<interceptor-ref name="defaultStack">
<param name="fileUpload.maximumSize">1024000</param>
<param name="fileUpload.allowedTypes">text/html,application/msword,application/vnd.ms- word,application/vnd.ms-excel,application/excel,image/jpeg,image/png,image/pjpeg</param>
<param name="fileUpload.allowedExtensions">.txt,.doc,.xls,.jpg,.jpeg,.png</param>
</interceptor-ref>
图片能够上传。但是doc和xls不能上传。
1、建议使用扩展名 mime type 太麻烦
png,bmp,jpg,doc,xls
"doc", "docx", "xls", "xlsx", "ppt", "pptx", 考虑0ffice2007的 带x
2、如果allowedTypes参数有配置,那么allowedExtensions参数将不会再起效。
[url]http://blog.csdn.net/smcwwh/article/details/7349449[/url]
3、以下是我经常用到的一些扩展名
public static final String[] DEFAULT_ALLOWED_EXTENSION = {
//图片
"bmp", "gif", "jpg", "jpeg", "png",
//word excel powerpoint
"doc", "docx", "xls", "xlsx", "ppt", "pptx",
"html", "htm", "txt",
//压缩文件
"rar", "zip", "gz", "bz2",
//pdf
"pdf"
};
貌似要用 这个过滤下就可以了
image/bmp,image/png,image/gif,doc/xls
defaultStack 放在后面
一般配置是这样的,还要把defaultStack加上
[code="java"]
image/bmp,image/png,image/gif,image/jpeg,image/jpg,
</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
<result name="input">/upload/upload.jsp</result>
<result name="success">/upload/showUpload.jsp</result>
</action>
</package>[/code]