在java中解析转义的xml标记
转换soap响应时出现性能问题。问题的核心在于soap响应的xml格式不正确。soap响应转义了xml标记(例如,在java中解析转义的xml标记,java,xml,soap,Java,Xml,Soap,转换soap响应时出现性能问题。问题的核心在于soap响应的xml格式不正确。soap响应转义了xml标记(例如,SomeNodeName文本/SomeNodeName而不是someText)。据我所知,java(我使用的java.xml库)将转义标记视为一个“大”标记。为了能够成功解析soap响应,我必须使用“StringEscapeUtils”来“unescape”所有字符。这是实际的瓶颈。我必须将每个节点转换为字符串,取消它的scape并将其作为节点写回。 当响应大约为1MB+时,性能会受
SomeNodeName文本/SomeNodeName
而不是someText
)。据我所知,java(我使用的java.xml库)将转义标记视为一个“大”标记。为了能够成功解析soap响应,我必须使用“StringEscapeUtils”来“unescape”所有字符。这是实际的瓶颈。我必须将每个节点转换为字符串,取消它的scape并将其作为节点写回。
当响应大约为1MB+时,性能会受到质疑。
确切响应如下(无信封):
BisnodeWebServiceData
状态1/状态
资料
PodjetjeFinancni
项目
乐透2016/乐透
TipSubjekta1/TipSubjekta
........
/项目
项目
乐透2015/乐透
TipSubjekta1/TipSubjekta
........
/项目
........
/PodjetjeFinancni
/资料
/BisnodeWebServiceData
我的问题是。有没有办法绕过这个节点字符串节点进程并使用原始转义的soap响应来解析它
谢谢。还有两种可能性。1找出标记转义的原因并修复它。2通过过滤器运行文档以取消所有标记的显示。在任何一种情况下,您都可以使用一个简单的xml文档。我无法影响响应,因为它是由web服务提供商提供的。将尝试使用过滤器方法。谢谢。
<GetData_PodjetjeReportResponse> <GetData_PodjetjeReportResult>
<BisnodeWebServiceData>
<Status>1</Status>
<Data>
<PodjetjeFinancni>
<Item>
<Leto>2016</Leto>
<TipSubjekta>1</TipSubjekta>
........
</Item>
<Item>
<Leto>2015</Leto>
<TipSubjekta>1</TipSubjekta>
........
</Item>
........
</PodjetjeFinancni>
</Data>
</BisnodeWebServiceData>
</GetData_PodjetjeReportResult> </GetData_PodjetjeReportResponse>