我开发了一个 Web 服务并使用 Axis 部署它。一切都运行得很好,但是当我使用包含不可打印字符(例如 ETX、FS、..)的字符串使用服务时遇到问题。我有以下错误:
exception: java.lang.IllegalArgumentException: The char '0x1c' after '....' is not a valid XML character.
请问你有什么想法吗?
编辑 :
我必须使用 Web 服务向我的服务器发送一个帧。我的框架有一个严格的形式(包含一些不可打印的字符作为分隔符)
class Automate {void checkFrame(String frame){// checking the frame}}
wsdl 文件
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:part element="impl:checkFrameResponse" name="parameters"/>
<wsdl:part element="impl:checkFrame" name="parameters"/>
<wsdl:operation name="checkFrame">
<wsdl:input message="impl:checkFrameRequest" name="checkFrameRequest"/>
<wsdl:output message="impl:checkFrameResponse" name="checkFrameResponse"/>
</wsdl:operation>
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="checkFrame">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="checkFrameRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdl:output name="checkFrameResponse">
<wsdlsoap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:port binding="impl:AutomateSoapBinding" name="Automate">
<wsdlsoap:address location="http://localhost:8080/Gateway/services/Automate"/>
</wsdl:port>