Java 在基于SpringMVC的RESTAPI中,如何防止Jackson序列化来自控制器方法的响应?

Java 在基于SpringMVC的RESTAPI中,如何防止Jackson序列化来自控制器方法的响应?,java,rest,spring-mvc,jackson,Java,Rest,Spring Mvc,Jackson,我正在开发一个Angular 2应用程序,需要通过在后端请求文件来提供文件 我正在从后端返回请求文件的文件对象。但是Jackson正在自动序列化该响应,我得到的是作为响应的文件名,而不是作为一个整体的文件名 此外,该文件是一个XML文件。有人能帮助我防止Jackson序列化我的控制器方法发送的Java文件对象吗 编辑 添加了执行文件服务的控制器代码 @RequestMapping(value = FatcaConstants.GET_XML_FILE, method = RequestMeth

我正在开发一个Angular 2应用程序,需要通过在后端请求文件来提供文件

我正在从后端返回请求文件的文件对象。但是Jackson正在自动序列化该响应,我得到的是作为响应的文件名,而不是作为一个整体的文件名

此外,该文件是一个XML文件。有人能帮助我防止Jackson序列化我的控制器方法发送的Java文件对象吗


编辑 添加了执行文件服务的控制器代码

@RequestMapping(value = FatcaConstants.GET_XML_FILE, method = RequestMethod.GET)
public File getXML(@RequestParam(value = "filePath") String filePath) {
    LOG.info("Getting the XML report from the file path in the Controller");
    try {
        File file = new File(filePath);
        return file;
    } catch (Exception e) {
        LOG.info("Error in retrieving file " + filePath + " from the FileController");
        LOG.info(e.getMessage());
        return null;
    }
}

这取决于响应的内容类型,可能Jackson会序列化所有
application/xml
。阅读文档并了解Spring MVC方法可能返回的内容。返回文件不是在响应中返回文件内容的适当方式。我对这一切都不熟悉,我会查一下文档,找出一些答案。另一方面,是否真的有办法防止方法的返回对象被jackson序列化?我不确定使用REST控制器来服务静态内容是否是正确的方法(尽管这是可行的)。更好的方法是将文件映射为
资源(谷歌搜索或阅读本文:)您在REST端点的
products
属性中给出了什么?请同时显示端点代码这取决于响应的内容类型,可能Jackson会序列化所有
application/xml
。阅读文档并了解Spring MVC方法可能返回的内容。返回文件不是在响应中返回文件内容的适当方式。我对这一切都不熟悉,我会查一下文档,找出一些答案。另一方面,是否真的有办法防止方法的返回对象被jackson序列化?我不确定使用REST控制器来服务静态内容是否是正确的方法(尽管这是可行的)。更好的方法是将文件映射为
资源(谷歌搜索或阅读本文:)您在REST端点的
products
属性中给出了什么?请同时显示您的端点代码