java - 从 spring MVC Controller 传递 XML 文件

标签 java xml spring spring-mvc

我是 Spring 新手,我需要将 Spring Controller 的 XML 文件传递​​到我的 JavaScript 文件。谁能详细说明我应该如何做到这一点? 我已在我的 Controller 上尝试过此操作,但响应正文没有内容。

@Api(value = "XML", description = "")
@RequestMapping("/XML/v1/setting")
public class XMLController{

    @RequestMapping(method = RequestMethod.GET,
         value = "/createFOO",
         produces = "application/xml")
    @ResponseStatus(HttpStatus.CREATED)
    @ResponseBody
    public Document createFOO(){
       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
       DocumentBuilder builder;
       Document doc1 = null;
       try {
          builder = factory.newDocumentBuilder();
           doc1 = builder.parse(new FileInputStream("largeXmlGraph.xml"));
       } catch (ParserConfigurationException | SAXException | IOException e) {
                e.printStackTrace();
       }
       return doc1;
    }
}

最佳答案

你正在让事情变得复杂。

@RequestMapping(method = RequestMethod.GET,value = "/createFOO",produces = "application/xml")
public void createFOO(OutputStream out){
    try (InputStream is = new FileInputStream("largeXmlGraph.xml")) {
        StreamUtils.copy(is, out);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

类似的东西应该可以工作,您可能想要添加更好的异常处理(例如向客户端发送错误)。

关于java - 从 spring MVC Controller 传递 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31558209/

相关文章:

xml - XML 属性值中的控制字符

java - Apache FOP : Resolve to local docbook installation

java - 在 GWT 中循环生成 Hyperlink/HTML/'Please suggest'?

java - 当页面通过 requestdispatcher.forward 加载时,jquery 在 jsp 中不起作用

javascript - 从 Tropo API 接收 JSON(不是 XML)时出现问题

java - 获取Hibernate在Spring中的配置

java - NoUniqueBeanDefinitionException : No qualifying bean of type : This is not returned

json - 列 "IMAGE BINARY(255)"的值太长

java - Android 是否关心传递给 System.exit(...) 的退出状态代码?

java - 由 : org. apache.maven.surefire.booter.SurefireBooterForkException 引起: fork 进程中出现错误 [错误] 无法实例化类