关于Axis异常处理的问题。 请问有没有用过Axis web service框架的人呢?请教个问题哈,当出现异常的时候Axis会把异常封装成AxisFault对吧?那我如何从AxisFault中得到SOAP错误里面的fault code呢?希望有高人指点哈,谢谢了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不好意思,由于我对Axis和Soap不是很熟,所以可能没有表述清楚。我尽量表述清楚,我的意思是我的web service发生了异常,自然会跑出SOAP错误出来对吧,这样就会产生类似的错误出来:<SOAP-ENV:Fault xmlns:sqlsoapfaultcode="http://schemas.microsoft.com/sqlserver/2004/SOAP/SqlSoapFaultCode"> <faultcode>SOAP-ENV:Client</faultcode> <faultstring>There was an error in the incoming SOAP request packet: Client, InvalidXml</faultstring> <faultactor>http://schemas.microsoft.com/sqlserver/2004/SOAP</faultactor> <detail xmlns:SOAP-1_2-ENV="http://www.w3.org/2003/05/soap-envelope"> <SOAP-1_2-ENV:Code> <SOAP-1_2-ENV:Value>SOAP-1_2-ENV:Sender</SOAP-1_2-ENV:Value> <SOAP-1_2-ENV:Subcode> <SOAP-1_2-ENV:Value>sqlsoapfaultcode:InvalidXml</SOAP-1_2-ENV:Value> </SOAP-1_2-ENV:Subcode> </SOAP-1_2-ENV:Code> <SOAP-1_2-ENV:Reason> <SOAP-1_2-ENV:Text xml:lang="en-US">There was an error in the incoming SOAP request packet: Sender, InvalidXml</SOAP-1_2-ENV:Text> </SOAP-1_2-ENV:Reason> <SOAP-1_2-ENV:Node>http://MyServer:80/sql</SOAP-1_2-ENV:Node> <SOAP-1_2-ENV:Role>http://schemas.microsoft.com/sqlserver/2004/SOAP</SOAP-1_2-ENV:Role> <SOAP-1_2-ENV:Detail> <sqlresultstream:SqlMessage xsi:type="sqlmessage:SqlMessage"> <sqlmessage:Class>16</sqlmessage:Class> <sqlmessage:LineNumber>0</sqlmessage:LineNumber> <sqlmessage:Message>XML parsing: line 3, character 0, incorrect document syntax</sqlmessage:Message> <sqlmessage:Number>9422</sqlmessage:Number> <sqlmessage:Source>Microsoft-SQL/9.0</sqlmessage:Source> <sqlmessage:State>1</sqlmessage:State> </sqlresultstream:SqlMessage> </SOAP-1_2-ENV:Detail> </detail></SOAP-ENV:Fault>可是AXIS会把SOAP错误封装成它本身的EXCEPTION对象AxisFault对象,对吧,当我得到这个异常对象后我如何能得到soap错误里面的faultcode节点里面的值呢,我直接用AxisFault.getFaultCode()方法好像无法得到啊?? 这是个xml,你要得到某个标签的值,得先把xml反序列化成对象吧不过,我不理解你为什么要获得他的值呢,axis出错说明程序跑出错了,要捕捉异常直接用exception捕捉好了,难道还要根据那个code值不同来做不同处理? div+js问题 请大家给点建议 <s:property /> 与 <s:date /> 一个学Java人的困惑? 散分:开发C/S和开发B/S有什么不同? 当我通过页面访问这个servlet时 request.getHeader("Referer") 返回值总是为null html的代码在最后 谢谢 struts的初学者用什么书比较好? logback比log4j性能还低? build.xml里内容是自已写,还是用工具写? 在 JBuilder中开发 entityBean 遇到的一个问题。 hibernate 映射文件字段default默认值属性的作用 一道编程实现求解(急)
<SOAP-ENV:Fault xmlns:sqlsoapfaultcode="http://schemas.microsoft.com/sqlserver/2004/SOAP/SqlSoapFaultCode">
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>There was an error in the incoming SOAP request packet: Client, InvalidXml</faultstring>
<faultactor>http://schemas.microsoft.com/sqlserver/2004/SOAP</faultactor>
<detail xmlns:SOAP-1_2-ENV="http://www.w3.org/2003/05/soap-envelope">
<SOAP-1_2-ENV:Code>
<SOAP-1_2-ENV:Value>SOAP-1_2-ENV:Sender</SOAP-1_2-ENV:Value>
<SOAP-1_2-ENV:Subcode>
<SOAP-1_2-ENV:Value>sqlsoapfaultcode:InvalidXml</SOAP-1_2-ENV:Value>
</SOAP-1_2-ENV:Subcode>
</SOAP-1_2-ENV:Code>
<SOAP-1_2-ENV:Reason>
<SOAP-1_2-ENV:Text xml:lang="en-US">There was an error in the incoming SOAP request packet: Sender, InvalidXml</SOAP-1_2-ENV:Text>
</SOAP-1_2-ENV:Reason>
<SOAP-1_2-ENV:Node>http://MyServer:80/sql</SOAP-1_2-ENV:Node>
<SOAP-1_2-ENV:Role>http://schemas.microsoft.com/sqlserver/2004/SOAP</SOAP-1_2-ENV:Role>
<SOAP-1_2-ENV:Detail>
<sqlresultstream:SqlMessage xsi:type="sqlmessage:SqlMessage">
<sqlmessage:Class>16</sqlmessage:Class>
<sqlmessage:LineNumber>0</sqlmessage:LineNumber>
<sqlmessage:Message>XML parsing: line 3, character 0, incorrect document syntax</sqlmessage:Message>
<sqlmessage:Number>9422</sqlmessage:Number>
<sqlmessage:Source>Microsoft-SQL/9.0</sqlmessage:Source>
<sqlmessage:State>1</sqlmessage:State>
</sqlresultstream:SqlMessage>
</SOAP-1_2-ENV:Detail>
</detail>
</SOAP-ENV:Fault>可是AXIS会把SOAP错误封装成它本身的EXCEPTION对象AxisFault对象,对吧,当我得到这个异常对象后我如何能得到soap错误里面的faultcode节点里面的值呢,我直接用AxisFault.getFaultCode()方法好像无法得到啊??
不过,我不理解你为什么要获得他的值呢,axis出错说明程序跑出错了,要捕捉异常直接用exception捕捉好了,难道还要根据那个code值不同来做不同处理?