java.lang.IllegalArgumentException:&x27;不是有效的XML字符
我在JAVA类中调用.NETWebService,它将从文本文件中读取字符串,并用UTF8编码,然后将该字符串返回给JAVA。但有时,即使文本文件中的文本格式正确,也会出现非法参数异常。 以下是我得到的例外情况:java.lang.IllegalArgumentException:&x27;不是有效的XML字符,java,.net,encoding,decoding,Java,.net,Encoding,Decoding,我在JAVA类中调用.NETWebService,它将从文本文件中读取字符串,并用UTF8编码,然后将该字符串返回给JAVA。但有时,即使文本文件中的文本格式正确,也会出现非法参数异常。 以下是我得到的例外情况: **SEVERE: Servlet.service() for servlet BaseController threw exception java.lang.IllegalArgumentException: The char '0x0' after 'return code:
**SEVERE: Servlet.service() for servlet BaseController threw exception
java.lang.IllegalArgumentException: The char '0x0' after 'return code: 502
<HEAD><TITLE>Parent proxy is not responding</TITLE></HEAD>
<BODY BGCOLOR="white" FGCOLOR="black"><H1>Parent proxy is not responding</H1><HR>
<FONT FACE="Helvetica,Arial"><B>
Description: Parent proxy is not responding</B></FONT>
<HR>
<!-- default "Parent proxy is not responding" response (502) -->
</BODY>
' is not a valid XML character.
at org.apache.axis.components.encoding.AbstractXMLEncoder.encode(AbstractXMLEncoder.java:110)
at org.apache.axis.utils.XMLUtils.xmlEncodeString(XMLUtils.java:131)
at org.apache.axis.utils.DOM2Writer.normalize(DOM2Writer.java:344)
at org.apache.axis.utils.DOM2Writer.print(DOM2Writer.java:246)
at org.apache.axis.utils.DOM2Writer.print(DOM2Writer.java:208)
at org.apache.axis.utils.DOM2Writer.serializeAsXML(DOM2Writer.java:77)
at org.apache.axis.utils.DOM2Writer.serializeAsXML(DOM2Writer.java:60)
at org.apache.axis.utils.DOM2Writer.nodeToString(DOM2Writer.java:49)
at org.apache.axis.utils.XMLUtils.privateElementToString(XMLUtils.java:433)
at org.apache.axis.utils.XMLUtils.ElementToString(XMLUtils.java:442)
at org.apache.axis.utils.XMLUtils.getInnerXMLString(XMLUtils.java:542)
at org.apache.axis.AxisFault.dumpToString(AxisFault.java:388)
at org.apache.axis.AxisFault.printStackTrace(AxisFault.java:789)
at java.lang.Throwable.printStackTrace(Throwable.java:451)
at com.hcl.webservice.BaseController.doPost(BaseController.java:155)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:680)
**
**严重:Servlet BaseController的Servlet.service()引发异常
java.lang.IllegalArgumentException:return code:502之后的字符“0x0”
父代理没有响应
父代理没有响应
描述:父代理没有响应
'不是有效的XML字符。
位于org.apache.axis.components.encoding.AbstractXMLEncoder.encode(AbstractXMLEncoder.java:110)
位于org.apache.axis.utils.XMLUtils.xmlEncodeString(XMLUtils.java:131)
位于org.apache.axis.utils.DOM2Writer.normalize(DOM2Writer.java:344)
位于org.apache.axis.utils.DOM2Writer.print(DOM2Writer.java:246)
位于org.apache.axis.utils.DOM2Writer.print(DOM2Writer.java:208)
位于org.apache.axis.utils.DOM2Writer.serializeAsXML(DOM2Writer.java:77)
位于org.apache.axis.utils.DOM2Writer.serializeAsXML(DOM2Writer.java:60)
位于org.apache.axis.utils.DOM2Writer.nodeToString(DOM2Writer.java:49)
位于org.apache.axis.utils.XMLUtils.privateElementToString(XMLUtils.java:433)
位于org.apache.axis.utils.XMLUtils.ElementToString(XMLUtils.java:442)
位于org.apache.axis.utils.XMLUtils.getInnerXMLString(XMLUtils.java:542)
位于org.apache.axis.AxisFault.dumpToString(AxisFault.java:388)
位于org.apache.axis.AxisFault.printStackTrace(AxisFault.java:789)
位于java.lang.Throwable.printStackTrace(Throwable.java:451)
位于com.hcl.webservice.BaseController.doPost(BaseController.java:155)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
位于org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
位于org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
位于org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
运行(Thread.java:680)
**
请帮忙解决这个问题。
提前感谢消息说,完整的以下字符串后面的空字符(0x0):
return code: 502
<HEAD><TITLE>Parent proxy is not responding</TITLE></HEAD>
<BODY BGCOLOR="white" FGCOLOR="black"><H1>Parent proxy is not responding</H1><HR>
<FONT FACE="Helvetica,Arial"><B>
Description: Parent proxy is not responding</B></FONT>
<HR>
<!-- default "Parent proxy is not responding" response (502) -->
</BODY>
返回代码:502
父代理没有响应
父代理没有响应
描述:父代理没有响应
不是有效的XML字符。换句话说,您遇到了涉及父代理的网络问题,HTTP响应的主体包含了一个HTML格式的问题的可读描述。您的服务客户端正在尝试将此文本解析为XML,因此出现了错误。你好,Marko,谢谢您的回复。我已从编码字符串中删除了十六进制值',其工作正常,没有例外。