Problem
Consumer security server fails to parse the returned SOAP message. The bug occurs when the XML elements of the SOAP message returned from the information service contains & or <.
For example:
<soapenv:Header>
<xro:id>Ernst & Young Oy</xro:id>
Would result in:
2017-03-08 15:06:40,411 [qtp1807894765-313] ERROR e.r.x.p.c.AbstractClientProxyHandler - Request processing error (9ee10907-46ec-47eb-b6a0-0d26c9f1ec62)
ee.ria.xroad.common.CodedException: Server.ClientProxy.ServiceFailed.InvalidSoap: org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 735; The entity name must immediately follow the '&' in the entity reference.
at ee.ria.xroad.common.ErrorCodes.translateException(ErrorCodes.java:209) ~[proxy-1.0.jar:na]
at ee.ria.xroad.common.message.SaxSoapParserImpl.parse(SaxSoapParserImpl.java:210) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.protocol.ProxyMessageDecoder.handleSoap(ProxyMessageDecoder.java:318) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.protocol.ProxyMessageDecoder.access$400(ProxyMessageDecoder.java:71) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.protocol.ProxyMessageDecoder$ContentHandler.body(ProxyMessageDecoder.java:233) ~[proxy-1.0.jar:na]
at org.apache.james.mime4j.parser.MimeStreamParser.parse(MimeStreamParser.java:133) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.protocol.ProxyMessageDecoder.parseMultipart(ProxyMessageDecoder.java:186) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.protocol.ProxyMessageDecoder.parse(ProxyMessageDecoder.java:142) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.clientproxy.ClientMessageProcessor.parseResponse(ClientMessageProcessor.java:348) ~[proxy-1.0.jar:na]
at ee.ria.xroad.proxy.clientproxy.ClientMessageProcessor.processRequest(ClientMessageProcessor.java:243) ~[proxy-1.0.jar:na]
Problem probably occurs while producer proxy is adding requestHash header to the response.
Affected components: proxy Affected documentation: - Estimated delivery: - External reference: https://jira.ria.ee/browse/XTE-262, https://jira.ria.ee/browse/XTE-333
Problem Consumer security server fails to parse the returned SOAP message. The bug occurs when the XML elements of the SOAP message returned from the information service contains
&
or<
.For example:
Would result in:
Problem probably occurs while producer proxy is adding requestHash header to the response.
Acceptance criteria