on 11-14-2012 4:57 AM
Hello Experts,
we have proxy to soap sync scenario for cretaing the request structure business has given a XSD in that there is some field XYZ which has no data type and occurences as 0 to unbounded in ECC in abap proxy they are facing the issue as follow for the same field.
SERIALIZE_APPLICATION_DATA Conversion error ABAP => XML: Request Message; CX_ST_
SERIALIZATION_ERROR in /1SAI/TASB3F3B9D6A1F67E55A2FF Line 1690 An error occurred
during serialization in the simple transformation program /1SAI/TASB3F3B9D6A1F6
7E55A2FF (Error while parsing an XML stream: 'BOM / charset detection failed'. K
ernel ErrorId: XML_FRAGMENT_ERROR).
XSD Strcutre is as follow
<xs:element name="ABCD" minOccurs="0">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="XYZ"/>
</xs:sequence>
</xs:complexType>
</xs:element>.
will the above structure really effects for abap proxy is data type for a field is manditory?
Please throgh some light on the issue any help is highly appreciated.
Regards
Praveen
Dear praveen,
SERIALIZE_APPLICATION_DATA Conversion error comes when the data type mismatch occure .
Definitively due to field "XYZ" this error comes. check this filed .
thanks and regards,
Anup Banerjee
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Anup,
Yes i have came acroos SDN this would be data type issue but in PI there is no data type defined for this field abaper is saying when he generate abap proxy by default it is taking XSDANY because of that it should allow any data type will ECC generate by default XSDANY action should be from abap or PI if in PI what needs to changed if ECC where it needs to be checked.
Regards
Praveen
Hello Praveen,
Here is a link of the supported schema and wsdl in PI 7.1
It says that the xsd:any is ignored with warnings in ABAP Proxies (row 21).
Hope this helps,
Mark
HI Mark,
Ok i understand then what is the solution for this XSDANY data type is not defined in PI ECC it self is generating this now definetly any data type should be added in the XSD of PI or in ABAP we can handle this by defining any data type please suggest how we can over come this.
regards
Praveen
Hi All,
I have created WSDL file through function module in SAP-ECC 5.0v.
I have followed below steps:
Crated FM (SE37)
Crated Web-service (SE37)
Generated WSDL file using (WSADMIN)
And consumed WSDF file in SOAP UI (SOAP UI 4.5.2 Trailer version)
Problem is: while consuming WSDL file in SOAP UI I getting ‘Serialisation failed’
For your reference I have furnished xml string below.
SOAP UI Input:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:sap-com:document:sap:rfc:functions">
<soapenv:Header/>
<soapenv:Body>
<urn:YSDF_INV_PRINT_FINAL_RFC_WS_N>
<!--Optional:-->
<PWR_INVOICE>
<INVOICE_SHIPPED_LINE>
<!--Zero or more repetitions:-->
<item>
<POSITION1></POSITION1>
<SALES_PART></SALES_PART>
<PART_DESC></PART_DESC>
<PRICE></PRICE>
<QUANTITY></QUANTITY>
<CUSTOMER_TAX_NO></CUSTOMER_TAX_NO>
<PROD_NONINVENTORY></PROD_NONINVENTORY>
<PROD_TAXABLE></PROD_TAXABLE>
<TAX_LEVEL></TAX_LEVEL>
</item>
</INVOICE_SHIPPED_LINE>
<INVOICE_NO></INVOICE_NO>
<ORDER_NO></ORDER_NO>
<DATE_PRINTED></DATE_PRINTED>
<DIV_CD></DIV_CD>
<LAST_COST_INVOICE></LAST_COST_INVOICE>
<DELETE_ZERO_COST></DELETE_ZERO_COST>
<DELETE_NON_SHIPPED></DELETE_NON_SHIPPED>
<GLOBALREF></GLOBALREF>
<ORIGIN></ORIGIN>
<ORIGINID></ORIGINID>
</PWR_INVOICE>
</urn:YSDF_INV_PRINT_FINAL_RFC_WS_N>
</soapenv:Body>
</soapenv:Envelope>
SOAP UI Output:
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client</faultcode>
<faultstring xml:lang="en">Serialisation failed</faultstring>
<detail>
<n0:SimpleTransformationFault xmlns:n0="http://www.sap.com/transformation-templates">
<MainName>/1BCDWB/WSS0130716111624448000</MainName>
<ProgName>/1BCDWB/WSS0130716111624448000</ProgName>
<Line>8</Line>
<Valid>X</Valid>
<ReferenceFault>
<DescriptionText>Error accessing the ref. node 'INVOICE_ID'</DescriptionText>
<RefName>INVOICE_ID</RefName>
</ReferenceFault>
<Caller>
<Class>CL_SRG_RFC_PROXY_CONTEXT</Class>
<Method>IF_SXML_PART~DECODE</Method>
<Positions>1</Positions>
</Caller>
</n0:SimpleTransformationFault>
</detail>
</soap-env:Fault>
</soap-env:Body>
</soap-env:Envelope>
And one more things are
I don't know the exact reason, but now the WSDL is working fine. No Idea, will it be consistent.
No changes in import and export parameters of RFC and no change in code, even if the logic is changed it should not affect the output on SOAP UI but in my case it does.
Wonder why all this happens, I cannot explain the exact reason technically because my RFC works fine every time, only issue is with SOAP UI.
From SAP point of view FM is working fine, and input parameter of FM is optional, validations are done by the programming logic and it will capture the message and its details with respect to input data.
I am not sure SOAP will work consistently.
Kindly help me on this
Thanks & Regards,
User | Count |
---|---|
86 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.