用于CSV上载的Struts2 + Tomcat MIME类型

时间:2011-01-27 15:36:24

标签: java tomcat file-upload struts2 mime-types

我正在使用Struts2文件上传(http://struts.apache.org/2.2.1/docs/file-upload.html)来上传我要解析的CSV或Excel文件。

对于这两种文件类型,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>

1 个答案:

答案 0 :(得分:0)

只是把它放在那里可能不是一个通用的解决方案,但你应该能够创建一个表单的文件上传动作(我认为mime类型是由应用程序服务器决定的,所以在struts之外。)

<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>

未经过测试 然后您可以使用http://address_and_port/context_root/upload/myFile.jpg

来调用它

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

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