[英]How to set HttpServletResponse on Jboss EAP 6.2?
我有一个简单的方法,需要将contentType更改为“ text / plain”,但是当我使用Jboss EAP 6.2时,它将被忽略,返回值为“ application / json”。
@RestController
@RequestMapping("/upload")
public class UploadController {
...
@RequestMapping(method = RequestMethod.POST)
public Result foo(MultipartFile arquivo, HttpServletResponse response) {
response.setContentType("text/plain");
return uploadService.saveFile(arquivo);
}
}
我正在使用SpringMVC(剩余控制器)和Jackson来解析为JSON。 当我使用Jetty而不是Jboss时,完全相同的方法可以正常工作。
我不能使用@RequestMapping(produces =“ text / plain”),因为实际方法中包含更多逻辑,有时它会返回application / json其他text / plain,这取决于请求是否来自IE9浏览器。
有人可以告诉我如何在Jboss上设置contentType吗?
不幸的是,我可以为Jboss使用此方法的唯一方法是为IE9创建另一种方法:
@RequestMapping(value = "/ie9", method = RequestMethod.POST, produces = MediaType.TEXT_PLAIN_VALUE)
public String fooIE9(@RequestParam("arquivo") MultipartFile arquivo) throws JsonProcessingException {
ObjectWriter ow = new ObjectMapper().writer();
return ow.writeValueAsString(uploadService.saveFile(arquivo));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.