我正在尝试@RequestMapping
与consumes
-element 一起使用。读取它在请求的 -header 上工作的API 文档。Content-Type
但是,使用
@RequestMapping(consumes = "application/x-www-form-urlencoded;charset=UTF-8", value = "/test")
public void test() {
:
}
或者
@RequestMapping(consumes = "application/x-www-form-urlencoded;charset=ISO-8859-1", value = "/test")
public void test() {
:
}
没有什么区别。请求中的标头看起来像
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
或者
Content-Type: application/x-www-form-urlencoded
test()
将在所有四个可能的星座中被调用。
但是,这向我证明了 Spring 看到并尝试使用charset
-part,如果我指定
@RequestMapping(consumes = "application/x-www-form-urlencoded;charset=UTF-x8", value = "/test")
public void test() {
:
}
在网络应用程序的启动(!)期间出现异常:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping#0': Initialization of bean failed;
nested exception is java.nio.charset.UnsupportedCharsetException: UTF-x8
请注意,关于produces
-element 的文档也没有提到使用charset
,但根据谷歌的一些使用它。
关于这里发生的事情或我做错了什么的任何线索?
顺便说一句,这是 Spring 3.1.1.RELEASE。