Hello.
I try to use a Web service connected to Sage X3, using the method "modify" of CAdxResultXml object. It works fine if the modify process success.
But if the method fails (es an article blocked from another user) the resultXml property is null and I have no message in the messages array property.
How can I read the message?
Thanks for advance for your help.
Marco
<wsdl:definitions xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:wss="http://www.adonix.com/WSS" xmlns:intf="http://www.adonix.com/WSS" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.adonix.com/WSS"> <!-- WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT) --> <wsdl:types> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.adonix.com/WSS"> <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/> <complexType name="CAdxCallContext"> <sequence> <element name="codeLang" nillable="true" type="xsd:string"/> <element name="poolAlias" nillable="true" type="xsd:string"/> <element name="poolId" nillable="true" type="xsd:string"/> <element name="requestConfig" nillable="true" type="xsd:string"/> </sequence> </complexType> <complexType name="CAdxMessage"> <sequence> <element name="message" nillable="true" type="xsd:string"/> <element name="type" nillable="true" type="xsd:string"/> </sequence> </complexType> <complexType name="ArrayOfCAdxMessage"> <complexContent> <restriction base="soapenc:Array"> <attribute ref="soapenc:arrayType" wsdl:arrayType="wss:CAdxMessage[]"/> </restriction> </complexContent> </complexType> <complexType name="CAdxTechnicalInfos"> <sequence> <element name="busy" type="xsd:boolean"/> <element name="changeLanguage" type="xsd:boolean"/> <element name="changeUserId" type="xsd:boolean"/> <element name="flushAdx" type="xsd:boolean"/> <element name="loadWebsDuration" type="xsd:double"/> <element name="nbDistributionCycle" type="xsd:int"/> <element name="poolDistribDuration" type="xsd:double"/> <element name="poolEntryIdx" type="xsd:int"/> <element name="poolExecDuration" type="xsd:double"/> <element name="poolRequestDuration" type="xsd:double"/> <element name="poolWaitDuration" type="xsd:double"/> <element name="processReport" nillable="true" type="xsd:string"/> <element name="processReportSize" type="xsd:int"/> <element name="reloadWebs" type="xsd:boolean"/> <element name="resumitAfterDBOpen" type="xsd:boolean"/> <element name="rowInDistribStack" type="xsd:int"/> <element name="totalDuration" type="xsd:double"/> <element name="traceRequest" nillable="true" type="xsd:string"/> <element name="traceRequestSize" type="xsd:int"/> </sequence> </complexType> <complexType name="CAdxResultXml"> <sequence> <element name="messages" nillable="true" type="wss:ArrayOfCAdxMessage"/> <element name="resultXml" nillable="true" type="xsd:string"/> <element name="status" type="xsd:int"/> <element name="technicalInfos" nillable="true" type="wss:CAdxTechnicalInfos"/> </sequence> </complexType> <complexType name="CAdxParamKeyValue"> <sequence> <element name="key" nillable="true" type="xsd:string"/> <element name="value" nillable="true" type="xsd:string"/> </sequence> </complexType> <complexType name="ArrayOfCAdxParamKeyValue"> <complexContent> <restriction base="soapenc:Array"> <attribute ref="soapenc:arrayType" wsdl:arrayType="wss:CAdxParamKeyValue[]"/> </restriction> </complexContent> </complexType> <complexType name="ArrayOf_xsd_string"> <complexContent> <restriction base="soapenc:Array"> <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/> </restriction> </complexContent> </complexType> </schema> </wsdl:types> <wsdl:message name="queryRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> <wsdl:part name="listSize" type="xsd:int"/> </wsdl:message> <wsdl:message name="insertLinesResponse"> <wsdl:part name="insertLinesReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="getDataXmlSchemaResponse"> <wsdl:part name="getDataXmlSchemaReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="actionObjectKeysResponse"> <wsdl:part name="actionObjectKeysReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="deleteRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> </wsdl:message> <wsdl:message name="runRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="inputXml" type="xsd:string"/> </wsdl:message> <wsdl:message name="runResponse"> <wsdl:part name="runReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="queryResponse"> <wsdl:part name="queryReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="insertLinesRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> <wsdl:part name="blocKey" type="xsd:string"/> <wsdl:part name="lineKey" type="xsd:string"/> <wsdl:part name="lineXml" type="xsd:string"/> </wsdl:message> <wsdl:message name="getDescriptionResponse"> <wsdl:part name="getDescriptionReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="deleteLinesRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> <wsdl:part name="blocKey" type="xsd:string"/> <wsdl:part name="lineKeys" type="wss:ArrayOf_xsd_string"/> </wsdl:message> <wsdl:message name="getDataXmlSchemaRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> </wsdl:message> <wsdl:message name="actionObjectRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="actionCode" type="xsd:string"/> <wsdl:part name="objectXml" type="xsd:string"/> </wsdl:message> <wsdl:message name="modifyRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> <wsdl:part name="objectXml" type="xsd:string"/> </wsdl:message> <wsdl:message name="saveResponse"> <wsdl:part name="saveReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="getDescriptionRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> </wsdl:message> <wsdl:message name="actionObjectKeysRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="actionCode" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> </wsdl:message> <wsdl:message name="deleteLinesResponse"> <wsdl:part name="deleteLinesReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="actionObjectResponse"> <wsdl:part name="actionObjectReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="deleteResponse"> <wsdl:part name="deleteReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="saveRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectXml" type="xsd:string"/> </wsdl:message> <wsdl:message name="readRequest"> <wsdl:part name="callContext" type="wss:CAdxCallContext"/> <wsdl:part name="publicName" type="xsd:string"/> <wsdl:part name="objectKeys" type="wss:ArrayOfCAdxParamKeyValue"/> </wsdl:message> <wsdl:message name="readResponse"> <wsdl:part name="readReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:message name="modifyResponse"> <wsdl:part name="modifyReturn" type="wss:CAdxResultXml"/> </wsdl:message> <wsdl:portType name="CAdxWebServiceXmlCC"> <wsdl:operation name="run" parameterOrder="callContext publicName inputXml"> <wsdl:input message="wss:runRequest" name="runRequest"/> <wsdl:output message="wss:runResponse" name="runResponse"/> <wsdl:documentation>Run X3 sub program</wsdl:documentation> </wsdl:operation> <wsdl:operation name="save" parameterOrder="callContext publicName objectXml"> <wsdl:input message="wss:saveRequest" name="saveRequest"/> <wsdl:output message="wss:saveResponse" name="saveResponse"/> <wsdl:documentation>Create X3 object</wsdl:documentation> </wsdl:operation> <wsdl:operation name="delete" parameterOrder="callContext publicName objectKeys"> <wsdl:input message="wss:deleteRequest" name="deleteRequest"/> <wsdl:output message="wss:deleteResponse" name="deleteResponse"/> <wsdl:documentation>Delete X3 object</wsdl:documentation> </wsdl:operation> <wsdl:operation name="read" parameterOrder="callContext publicName objectKeys"> <wsdl:input message="wss:readRequest" name="readRequest"/> <wsdl:output message="wss:readResponse" name="readResponse"/> <wsdl:documentation>Read X3 object</wsdl:documentation> </wsdl:operation> <wsdl:operation name="query" parameterOrder="callContext publicName objectKeys listSize"> <wsdl:input message="wss:queryRequest" name="queryRequest"/> <wsdl:output message="wss:queryResponse" name="queryResponse"/> <wsdl:documentation>Get X3 objects list</wsdl:documentation> </wsdl:operation> <wsdl:operation name="getDescription" parameterOrder="callContext publicName"> <wsdl:input message="wss:getDescriptionRequest" name="getDescriptionRequest"/> <wsdl:output message="wss:getDescriptionResponse" name="getDescriptionResponse"/> <wsdl:documentation>Get X3 web service description regarding publication done in GESAWE</wsdl:documentation> </wsdl:operation> <wsdl:operation name="modify" parameterOrder="callContext publicName objectKeys objectXml"> <wsdl:input message="wss:modifyRequest" name="modifyRequest"/> <wsdl:output message="wss:modifyResponse" name="modifyResponse"/> <wsdl:documentation>Update X3 object</wsdl:documentation> </wsdl:operation> <wsdl:operation name="actionObject" parameterOrder="callContext publicName actionCode objectXml"> <wsdl:input message="wss:actionObjectRequest" name="actionObjectRequest"/> <wsdl:output message="wss:actionObjectResponse" name="actionObjectResponse"/> <wsdl:documentation>Execute specific action on X3 object providing XML flow</wsdl:documentation> </wsdl:operation> <wsdl:operation name="actionObjectKeys" parameterOrder="callContext publicName actionCode objectKeys"> <wsdl:input message="wss:actionObjectKeysRequest" name="actionObjectKeysRequest"/> <wsdl:output message="wss:actionObjectKeysResponse" name="actionObjectKeysResponse"/> <wsdl:documentation>Execute specific action on X3 object providing keys</wsdl:documentation> </wsdl:operation> <wsdl:operation name="getDataXmlSchema" parameterOrder="callContext publicName"> <wsdl:input message="wss:getDataXmlSchemaRequest" name="getDataXmlSchemaRequest"/> <wsdl:output message="wss:getDataXmlSchemaResponse" name="getDataXmlSchemaResponse"/> <wsdl:documentation>Get X3 web service schema regarding publication done in GESAWE</wsdl:documentation> </wsdl:operation> <wsdl:operation name="insertLines" parameterOrder="callContext publicName objectKeys blocKey lineKey lineXml"> <wsdl:input message="wss:insertLinesRequest" name="insertLinesRequest"/> <wsdl:output message="wss:insertLinesResponse" name="insertLinesResponse"/> <wsdl:documentation>NOT YET IMPLEMENTED !!!</wsdl:documentation> </wsdl:operation> <wsdl:operation name="deleteLines" parameterOrder="callContext publicName objectKeys blocKey lineKeys"> <wsdl:input message="wss:deleteLinesRequest" name="deleteLinesRequest"/> <wsdl:output message="wss:deleteLinesResponse" name="deleteLinesResponse"/> <wsdl:documentation>Remove lines from X3 object table</wsdl:documentation> </wsdl:operation> </wsdl:portType> <wsdl:binding name="CAdxWebServiceXmlCCSoapBinding" type="wss:CAdxWebServiceXmlCC"> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="run"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="runRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="runResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="save"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="saveRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="saveResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="delete"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="deleteRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="deleteResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="read"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="readRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="readResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="query"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="queryRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="queryResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="getDescription"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="getDescriptionRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="getDescriptionResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="modify"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="modifyRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="modifyResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="actionObject"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="actionObjectRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="actionObjectResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="actionObjectKeys"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="actionObjectKeysRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="actionObjectKeysResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="getDataXmlSchema"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="getDataXmlSchemaRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="getDataXmlSchemaResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="insertLines"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="insertLinesRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="insertLinesResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="deleteLines"> <wsdlsoap:operation soapAction=""/> <wsdl:input name="deleteLinesRequest"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:input> <wsdl:output name="deleteLinesResponse"> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://www.adonix.com/WSS" use="encoded"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="CAdxWebServiceXmlCCService"> <wsdl:port binding="wss:CAdxWebServiceXmlCCSoapBinding" name="CAdxWebServiceXmlCC"> <wsdlsoap:address location="http://[server:port]/soap-generic/syracuse/collaboration/syracuse/CAdxWebServiceXmlCC"/> </wsdl:port> <wsdl:documentation>This SOAP web service allows to call X3 sub programs and/or to manipulate X3 objects trough CRUD and specifics methods</wsdl:documentation> </wsdl:service> </wsdl:definitions>