RestEasy csv文件上传(multipart / form-data)在FireFox中使用iso-8859-1字符

时间:2010-08-05 07:29:55

标签: java encoding character-encoding iso-8859-1 resteasy

我有一个multipart / form-data表单,可以将csv文件上传到rest easy(JAX RS)webservice。这个文件可以包含 iso-8859-1字符,例如é。当我通过Firefox上传文件时,这些字符会出现乱码,最终会像?当我通过Internet Explorer上传文件时,一切正常。

我已经做了很多阅读,发现firefox结合multipart / form-data存在问题,而charset属性(enctype='multipart/form-data; charset=ISO-8859-1')不起作用。

所以我尝试在我的HTML页面中设置<meta http-equiv="Content-Type" content="text/csv; charset=iso-8859-1" />(我也尝试设置text / html或multipart / form-data而不是text / csv,但这似乎没有任何区别。

我浏览了其余的简单api并发现了一些关于“覆盖多部分消息的默认后备内容类型”的内容。没有找到内容类型时的默认回退是us-ascii。我尝试处理的字符(é,..)在us-ascii中不存在,因此它们最终会出现乱码。覆盖此默认回退内容类型似乎也没有帮助(请参阅:http://docs.jboss.org/resteasy/docs/1.2.GA/userguide/html/Multipart.html

当我说Internet Explorer在http标头中正确发送内容类型+字符集时,我是对的,所以一切顺利。那个firefox在尝试发送内容类型/字符集的同时与multipart / form-data相结合时会搞砸了什么?我已经完成了对stackoverflow的搜索,但是没有一个已批准的解决方案似乎适用于我的情况。

以前是否有人遇到过这个问题? (使用Jboss休息简易框架的multipart / form-data文件上传)?还有什么我可以尝试的吗?

提前致谢!

的Yannick

0 个答案:

没有答案