Spring Boot + Webservice(在端点返回纯XML)

时间:2017-06-27 04:13:18

标签: web-services

我有一个现有的应用程序,由java用Spring boot + webservice编写。

最近,我从测试部门得到了一个要求,即同事希望应用程序返回由他输入的响应,无论响应是否违反XSD。

作为Spring Producing a SOAP web service example参考,我如何控制响应?

这是因为,通常,CountryEndpoint返回的响应是一个对象,它是根据countries.xsd

生成的。

我应该实现自己的MessageDispatcher / EndpointAdapter / Endpoint吗?

1 个答案:

答案 0 :(得分:0)

最后,我开发了自己的EndpointInterceptorAdapter。 从Endpoint返回的响应是明确的,然后从我的同事提供的文件中读取XML

这是我的EndpointInterceptorAdapter的代码

    public class SOIWSSimEndpointInterceptorAdapter extends EndpointInterceptorAdapter {

@Override
public boolean handleResponse(MessageContext messageContext, Object endpoint)  throws IOException {
    InputStream responseFileInputStream = new FileInputStream(new File("src/main/java/response/Response.xml"));
    messageContext.clearResponse();
    messageContext.readResponse(responseFileInputStream);

    return true;
}

}