springboot + cxf 搭建的web service ,处理的soap请求后,返回的http 响应头是 HTTP/1.1 200, 而不是 HTTP/1.1 200 OK
客户端代码,判断成功的 条件 是包含 字符串 “200 OK”, 但是 现在只有 “200”,导致判断失败,客户端代码又无法更改,所以想服务端这边去改变,也试了截获HttpServletResponse ,都不能改变这个响应头,
这个是soap消息返回的结果:
Fri May 12 17:47:05 CST 2017:DEBUG:<< "HTTP/1.1 200 [\r][\n]" //期待结果是HTTP/1.1 200 OK[\r][\n]
Fri May 12 17:47:05 CST 2017:DEBUG:<< "Content-Type: text/xml;charset=UTF-8[\r][\n]"
Fri May 12 17:47:05 CST 2017:DEBUG:<< "Content-Length: 310[\r][\n]"
Fri May 12 17:47:05 CST 2017:DEBUG:<< "Date: Fri, 12 May 2017 09:47:05 GMT[\r][\n]"
Fri May 12 17:47:05 CST 2017:DEBUG:<< "[\r][\n]"
Fri May 12 17:47:05 CST 2017:DEBUG:<< "<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body></soap:Body></soap:Envelope>"
问题原因终于找到了:使用springboot 1.4.0 及以上的版本就会有这个问题