2011-01-27 75 views
0

我正在使用Struts2文件上传(http://struts.apache.org/2.2.1/docs/file-upload.html)上传我将解析的CSV或Excel文件。用于CSV上传的Struts2 + Tomcat MIME类型

对于两种文件类型,MIME类型都设置为application/vnd.ms-excel,我想使CSV为text/csv。这样我就可以检查MIME类型并调用相应的解析器。

我试着加入以下到Tomcat的web.xml但它没有任何效果:

<mime-mapping> 
    <extension>csv</extension> 
    <mime-type>text/csv</mime-type> 
</mime-mapping> 

回答

0

只是把它有可能不是一个通用的解决方案,但你应该能够创建一个文件上传形式的作用(我认为MIME类型由应用服务器确定,以便为支柱的外面。)

<package name="upload" extends="struts-default"> 
    <action name="*.*" class="someClass"> 
    <param name="filePrefix">{1}</param> 
    <param name="fileExtension">{2}</param> 
    <action name="*.*" class="someClass"> 
</package> 

未测试,那么你可以用叫它

不像mime类型那样包含,但是如果你只做很少的文件,它可以工作,也许它是一个值得记住的技巧(你甚至可以用斜杠来做一个动作并解析它们之间的值作为参数)。

PS:我不知道是否需要转义点...