如题。。这是我的Struts配置文件中配置的action,问题是我配置allowedTypes是过滤上传类型的,目前上传功能是可以实现,问题出在只能上传 bmp格式的图片,其它类型的不能上传。请各位兄弟帮忙了
              <action name="FileUpLoad" class="ipanel.zm.tutorial.FileUpAction">
<interceptor-ref name="fileUpload">
<!--
maximumSize 上传大小
allowedTypes 上传类型
-->
<param name="maximumSize">
1024000
</param>
<param name="allowedTypes">
image/gif,image/bmp,image/png,image/jpeg
</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
<result name="input">FileUpLoad.jsp</result>
<result type="redirect">ShowUpload.jsp</result>
</action>

解决方案 »

  1.   

    看到别人的贴子上说加上image/pjpeg这个类型就可以解决问题了,开始觉得怎么可能,但是事实证明了一切,问题解决了。。但是不明白为什么加个image/pjpeg就可以,。如果有谁知道为什么的,希望讲解讲解
      

  2.   

    <param name="allowedTypes"> 
    image/gif,image/bmp,image/png,image/jpeg 
    </param> 
    改为:<param name="allowedTypes"> 
    image/pjpeg,image/gif,image/bmp,image/x-png</param> 

    这样,几种类型的图片都可以上传了.想上传其它的,继续添加其它文件类型格式就行了,用逗号隔开
      

  3.   

    楼上的知道为什么一定得加 image/pjpeg这个吗?
      

  4.   

    我看到struts2 MAX写的那个帮助文档上面就是 image/gif,image/bmp,image/png,image/jpeg 这样写的
      

  5.   

    可能跟struts2版本有关系吧,你用低版本试试看,可能就行了.
      

  6.   

    JPG格式的文件有两种,一种是image/pjpeg,一种是image/jpeg。你可以用UltraEdit打开这张图片,看看你上传的图片是哪种类型的。应为你传了一个PJPEG的文件,而拦截器里又没有配置,所以会出现你所说的问题。