“RAD中用WSDL生成Webservice客户机后调用方法报WSWS3047E错误”备忘

来源:互联网 发布:工程图纸数字签章软件 编辑:程序博客网 时间:2024/06/08 09:56

 错误:

WebServicesFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
 faultString: org.xml.sax.SAXException: WSWS3047E: 错误:无法反序列化 bean distributor.sales.inquiry.amway.com.BankAccount 的元素 accountStatusCode。 Message being parsed: <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/>...略...</env:Body></env:Envelope>
 faultActor: null
 faultDetail:

 

at com.ibm.ws.webservices.engine.WebServicesFault.makeFault(WebServicesFault.java:203)
    at com.ibm.ws.webservices.engine.SOAPPart._getSOAPEnvelope(SOAPPart.java:1055)
    at com.ibm.ws.webservices.engine.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:605)
    at com.ibm.ws.webservices.engine.Message.getSOAPEnvelope(Message.java:461)
    at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:492)
    at com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:818)

 

在网上搜索了相关问题,以下列出链接:

http://www-01.ibm.com/support/docview.wss?uid=swg21220377

http://www-01.ibm.com/support/docview.wss?rs=2307&context=SSQH9M&dc=D400&uid=swg24011690&loc=en_US&cs=UTF-8&lang=en

 

 

检查WebService客户端程序后发现:

1. 服务器端的distributor.sales.inquiry.amway.com.BankAccount类中增加了一个新的属性accountStatusCode

2.WebService客户端程序中没有做相应的增加,所以,无法从SOAP消息中反序列化BankAccount

 

解决:

在WebService客户端程序中做相应的修改,在增加BankAccount中增加accountStatusCode属性