SERIALIZE_APPLICATION_DATA Conversion error ABAP = XML: Request Message

I am getting the bellow error message when running the
Outbound interface.
CX_ST_SERIALIZATION_ERROR in /1SAI/SAS752E86EAFD7784E5A79D Line 569 An error occurred during serialization in the simple transformation program /1SAI/SAS752E86EAFD7784E5A79D (The va
I am getting this error at the time PROXY call.
I used the Data type as -
PER_AREA_SUB     Element     xsd:string     1          false     
Edited by: Naresh Nelapatla on Feb 23, 2012 5:16 PM
Edited by: Naresh Nelapatla on Feb 23, 2012 6:08 PM

Can you tell me how you solved this. I've got the same issue
Thanks
Peter Jonker

Similar Messages

  • Error processing XML request, java.lang.IllegalArgumentException

    Hi all,
    In my code I can successfully connect to server and send the content which is an XML content:
    param = java.net.URLEncoder.encode(s, "UTF-8");
    java.io.PrintWriter out = new java.io.PrintWriter(connection.getOutputStream());
    out.print(param);
    Read the response from server:
    java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(connection.getInputStream()));
    while((input = in.readLine()) != null)
    response += input + "\r";
    System.out.println("Client : received : "+response);
    Following is the response I receive from server:
    Client : received : <html><h1>Error processing XML request</h1>java.lang.IllegalArgumentException: No xml request posted</html>
    Has anybody know what the problem is? Why this error is issued?
    Any help is greatly appreciated.

    Dear legosa,
    Thanks so much for the replies. What you wrote makes absolute sence, w/o flush() or close(), it seems that I'm sending only balnk to output!
    I don't know how can I fix the 500 Internal Server Error; below is my complete code that does this part, can you tell me if you see sth. wrong in this code?
    param = java.net.URLEncoder.encode(aTrans.xmlDoc, "UTF-8");
    url = new URL("https://xml.test.surepay.com");
    connection = (HttpURLConnection)url.openConnection();                    
    connection.setDoInput(true);
    connection.setDoOutput(true);
    connection.setUseCaches(false);
    connection.setRequestMethod("POST");
    connection.setRequestProperty("Content-type", "application/x-www-form-urlencoded");
    String sLen = "" + param.length();
    connection.setRequestProperty("Content-length", sLen);
    connection.setRequestProperty("Accept", "text/plain");
    connection.connect();
    System.out.println("Client : Connected");
    java.io.PrintWriter out = new java.io.PrintWriter(connection.getOutputStream());
    System.out.println("Client : Writing Content");
    out.print(param);
    out.close();
    System.out.println(connection.getURL());          
    System.out.println(connection.getResponseCode() + " " + connection.getResponseMessage());
    System.out.println(connection.getURL());
    System.out.println("Client : Waiting for response from Server");
    java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(connection.getInputStream()));
    System.out.println("Client : Opened input stream");
    while((input = in.readLine()) != null)
    response += input + "\r";
    System.out.println("Client : received : "+response);

  • Xml request message validation error

    Hi,
    My request message is :
    <?xml version="1.0" encoding="utf-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <ns1:sum soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://service.bankfusion">
    <p1 href="#id0"/>
    <p2 href="#id1"/>
    </ns1:sum>
    <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">11</multiRef>
    <multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">20</multiRef>
    </soapenv:Body>
    </soapenv:Envelope>
    and my xsd schema to validate the request message against are as follows:
    REQUEST.XSD
    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema id="Envelope" targetNamespace="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mstns="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified" xmlns:app1="http://service.bankfusion" xmlns:app2="http://schemas.xmlsoap.org/soap/encoding/">
    <xs:import namespace="http://service.bankfusion" schemaLocation="request_app1.xsd" />
    <xs:import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="request_app2.xsd" />
    <xs:attribute name="encodingStyle" msdata:Prefix="soapenv" type="xs:string" />
    <xs:element name="Envelope" msdata:IsDataSet="true" msdata:Prefix="soapenv">
    <xs:complexType>
    <xs:choice maxOccurs="unbounded">
    <xs:element name="Body" msdata:Prefix="soapenv">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="app1:sum" />
    <xs:element name="multiRef" form="unqualified" nillable="true">
    <xs:complexType>
    <xs:simpleContent msdata:ColumnName="multiRef_Text" msdata:Ordinal="3">
    <xs:extension base="xs:string">
    <xs:attribute name="id" form="unqualified" type="xs:string" />
    <xs:attribute ref="app2:root" />
    <xs:attribute ref="mstns:encodingStyle" />
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:choice>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    REQUEST_APP1.XSD
    <?xml version="1.0" standalone="yes"?>
    <xs:schema id="Envelope" targetNamespace="http://service.bankfusion" xmlns:mstns="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://service.bankfusion" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified" xmlns:app1="http://service.bankfusion" xmlns:app2="http://schemas.xmlsoap.org/soap/encoding/">
    <xs:import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="request_app2.xsd" />
    <xs:import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="request.xsd" />
    <xs:element name="sum" msdata:Prefix="ns1">
    <xs:complexType>
    <xs:sequence>
    <xs:element name="p1" form="unqualified">
    <xs:complexType>
    <xs:attribute name="href" form="unqualified" type="xs:string" />
    </xs:complexType>
    </xs:element>
    <xs:element name="p2" form="unqualified">
    <xs:complexType>
    <xs:attribute name="href" form="unqualified" type="xs:string" />
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    <xs:attribute ref="mstns:encodingStyle" />
    </xs:complexType>
    </xs:element>
    </xs:schema>
    REQUEST_APP2.XSD
    <?xml version="1.0" standalone="yes"?>
    <xs:schema id="Envelope" targetNamespace="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mstns="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified" xmlns:app2="http://schemas.xmlsoap.org/soap/encoding/" xmlns:app1="http://service.bankfusion">
    <xs:import namespace="http://service.bankfusion" schemaLocation="request_app1.xsd" />
    <xs:import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="request.xsd" />
    <xs:attribute name="root" msdata:Prefix="soapenc" type="xs:string" />
    </xs:schema>
    My validation code is:
    public void validateRequest(ByteArrayInputStream isReqMsg) throws SAXException, IOException
    SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
    File schemaLocation = new File("request.xsd");
    try {
    Schema schema = factory.newSchema(schemaLocation);
    Validator validator = schema.newValidator();
    validator.validate(new StreamSource(isReqMsg));
    System.out.println("Request message is valid.");
    catch (SAXException ex) {
    System.out.println("Request message is invalid because ");
    System.out.println(ex.getMessage());
    System.out.println(ex.getStackTrace());
    throw ex;
    catch(IOException ie)
    System.out.println("Cannot read message because ");
    System.out.println(ie.getMessage());
    throw ie;
    The validator gives me the following error:
    org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1: '#id0' is not a valid value for 'integer'.
    Can anybody help spot the error?
    Thanks!!
    Karan

    Hi,
    My request message is :
    <?xml version="1.0" encoding="utf-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <ns1:sum soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://service.bankfusion">
    <p1 href="#id0"/>
    <p2 href="#id1"/>
    </ns1:sum>
    <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">11</multiRef>
    <multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">20</multiRef>
    </soapenv:Body>
    </soapenv:Envelope>
    and my xsd schema to validate the request message against are as follows:
    REQUEST.XSD
    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema id="Envelope" targetNamespace="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mstns="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified" xmlns:app1="http://service.bankfusion" xmlns:app2="http://schemas.xmlsoap.org/soap/encoding/">
    <xs:import namespace="http://service.bankfusion" schemaLocation="request_app1.xsd" />
    <xs:import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="request_app2.xsd" />
    <xs:attribute name="encodingStyle" msdata:Prefix="soapenv" type="xs:string" />
    <xs:element name="Envelope" msdata:IsDataSet="true" msdata:Prefix="soapenv">
    <xs:complexType>
    <xs:choice maxOccurs="unbounded">
    <xs:element name="Body" msdata:Prefix="soapenv">
    <xs:complexType>
    <xs:sequence>
    <xs:element ref="app1:sum" />
    <xs:element name="multiRef" form="unqualified" nillable="true">
    <xs:complexType>
    <xs:simpleContent msdata:ColumnName="multiRef_Text" msdata:Ordinal="3">
    <xs:extension base="xs:string">
    <xs:attribute name="id" form="unqualified" type="xs:string" />
    <xs:attribute ref="app2:root" />
    <xs:attribute ref="mstns:encodingStyle" />
    </xs:extension>
    </xs:simpleContent>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:choice>
    </xs:complexType>
    </xs:element>
    </xs:schema>
    REQUEST_APP1.XSD
    <?xml version="1.0" standalone="yes"?>
    <xs:schema id="Envelope" targetNamespace="http://service.bankfusion" xmlns:mstns="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://service.bankfusion" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified" xmlns:app1="http://service.bankfusion" xmlns:app2="http://schemas.xmlsoap.org/soap/encoding/">
    <xs:import namespace="http://schemas.xmlsoap.org/soap/encoding/" schemaLocation="request_app2.xsd" />
    <xs:import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="request.xsd" />
    <xs:element name="sum" msdata:Prefix="ns1">
    <xs:complexType>
    <xs:sequence>
    <xs:element name="p1" form="unqualified">
    <xs:complexType>
    <xs:attribute name="href" form="unqualified" type="xs:string" />
    </xs:complexType>
    </xs:element>
    <xs:element name="p2" form="unqualified">
    <xs:complexType>
    <xs:attribute name="href" form="unqualified" type="xs:string" />
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    <xs:attribute ref="mstns:encodingStyle" />
    </xs:complexType>
    </xs:element>
    </xs:schema>
    REQUEST_APP2.XSD
    <?xml version="1.0" standalone="yes"?>
    <xs:schema id="Envelope" targetNamespace="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mstns="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified" xmlns:app2="http://schemas.xmlsoap.org/soap/encoding/" xmlns:app1="http://service.bankfusion">
    <xs:import namespace="http://service.bankfusion" schemaLocation="request_app1.xsd" />
    <xs:import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="request.xsd" />
    <xs:attribute name="root" msdata:Prefix="soapenc" type="xs:string" />
    </xs:schema>
    My validation code is:
    public void validateRequest(ByteArrayInputStream isReqMsg) throws SAXException, IOException
    SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
    File schemaLocation = new File("request.xsd");
    try {
    Schema schema = factory.newSchema(schemaLocation);
    Validator validator = schema.newValidator();
    validator.validate(new StreamSource(isReqMsg));
    System.out.println("Request message is valid.");
    catch (SAXException ex) {
    System.out.println("Request message is invalid because ");
    System.out.println(ex.getMessage());
    System.out.println(ex.getStackTrace());
    throw ex;
    catch(IOException ie)
    System.out.println("Cannot read message because ");
    System.out.println(ie.getMessage());
    throw ie;
    The validator gives me the following error:
    org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1: '#id0' is not a valid value for 'integer'.
    Can anybody help spot the error?
    Thanks!!
    Karan

  • Cannot send XML request message - TREX doesn't return FQDN

    Hello all,
    is there any way to configure TREX, so that it always returns it's FQDN?
    I get the following error message from our SAP XECO (Shop) Java System.
    Full Message Text
    Object with category com.sap.isa.catalog.trex.TrexCatalogServerEngine could not be instantiated. Reason: cannot send XML request to http://saptx3:30305/TREX; reason: saptx3 (Errorcode 7262)
    The problem is, that TREX doesn't return it's FQDN.
    The TREX service as such is correctly configured in TREX Service "nameserver.address", "tcpip://hostname.domain:30301".
    I added the line
    SAPGLOBALHOST=saptx3.domain
    to the sapprofile.ini file. This didn't do the trick, unfortunately.
    Thanks a lot for your advice !
    Best Rgs,
    Thorsten

    HI Thorsten,
    Please ensure that your setting match that of note: 1479923 -  TREX: Queue server missing in KM TREX Monitor
    and also please check the following:
    Also do you have any proxy or firwall between TREX and the portal?
    It can to be that the problem is related to the proxy configuration in
    the Portal. Could you please check if you specified proxy in the
    System Administration -> System Configuration ->Service Configuration->
    Applications (Content Catalog) -> com.sap.portal.ivs.httpservice ->
    Services -> Proxy
    If a proxy server is entered there, you have to enter the TREX host in
    the http - bypass Proxy Servers.
    many thanks
    Orla.

  • XML Transformation error (ABAP -- XML)

    Hi,
    I'm getting the foll. error while doing a XML Transformation, Can anyone help me in this regard..
      <FIN_WT>56.0</FIN_WT>
      <FIN_WT_UNIT>KG</FIN_WT_UNIT>
      <ZZQMNUM />
      <ZZHOLD />
      <ZZDUMATNR
    The XML page cannot be displayed
    Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.
    The following tags were not closed: asx:abap, asx:values, OUTPUT, item. Error processing resource 'file:///C:/Documents and...
    > />
      <PSP_NR>U5/0626-HT-193-1-36-344</PSP_NR>
      <ZZCRTNAME>ALFI</ZZCRTNAME>
      <ZZAPPNAME>ALFI</ZZAPPNAME>
    Regards
    Jiku

    are you trying to transform XML to itab?
    is the xml well formed one - you can check this by running the xml file in webbrowser, if it doesnt display, then it means the xml is not well formed.
    Regards
    Raja

  • How to send two or more XML request messages to call ALSB from ALBPM

    Hi All,
    I have a scenario where two or more XML messages needs to be sent to the ALSB component from the ALBPM part.
    How can this be achieved using PBL coding.Please help me on this.
    Thanks,
    Prakash.

    Hi,
    Based on my test, I agree with Mr. KR, we could not open two or more xml files with the same name located in different folders with Excel 2013 at the same time, because XML is not the default format of Excel.
    Would you like to tell us the reason about this behavior, we might try the other methods to get your goal.
    If you have any update, please feel free let us know.
    Regards,
    George Zhao
    Forum Support
    Come back and mark the replies as answers if they help and unmark them if they provide no help.
    If you have any feedback on our support, please click "[email protected]"

  • PARSE_APPLICATION_DATA Error during XML = ABAP conversion: Response Message; CX_ST_DESERIALIZATION_ERROR in /1SAI/SAS0446CC11CC6EC1AD4789 Line 24 An error occurred when deserializing in the simple transformation program /1SAI/SAS0446CC11CC6EC1AD4789

    Hi Experts ,
    i have a scenario proxy to soap  where i am getting error while getting the response .
    we are sending the request successfully and getting response .some times we are getting in proxy level error below
    PARSE_APPLICATION_DATA Error during XML => ABAP conversion: Response Message; CX_ST_DESERIALIZATION_ERROR in /1SAI/SAS0446CC11CC6EC1AD4789 Line 24 An error occurred when deserializing in the simple transformation program /1SAI/SAS0446CC11CC6EC1AD4789 (Cha
    Please help us to fix this bug in proxy response.
    Regards
    Ravi

    Hello Ravinder,
    Can you please post the complete stack trace, it seems to be some fields are getting truncated i,e data sent from the program to the proxy object might be violating some length restrictions.
    Please check your message interface field lengths and what is being passed to the proxy.
    Regards,
    Ravi.

  • Error during XML = ABAP conversion

    Hi
      We have a synchronous call from a SRM application through a proxy framework to a vendor http server through XI. The response from the vendor's http server is returned through a custom structure -and is returned through XI back to the calling SRM application.
    After receiving the response, the calling SRM application checks for a particular field value of the custom return structure for a error code and sends out an email - accordingly.
    Now, the response message comes back from the vendor's server - but the lines of code beyond the synchronous call in the SRM calling application does not get executed ( mail generation part ) I get the following error on the SRM front end - <b>Error in Exchange Infrastructure: Error during XML => ABAP conversion (Response Message; error ID: CX_ST_MATCH_ELEMENT; (/1SAI/TXS00000000000000000001 XML Bytepos.: 39 XML Path: Error Text: System e</b>
    Now, this error when occured in our dev environment, I set the extended xml attribute property to 'X' for the synchronous payload in calling SRM application code. The problem is, this error is occuring now in our QA environment inspite of this property being set.
    Any ideas/suggestions as to why this message occurs in a standard proxy framework setup ?

    Hi,
       Please check this link <a href="http://help.sap.com/saphelp_nw04/helpdata/en/0c/402040abf2c442e10000000a1550b0/content.htm"></a>
    This talks about having the first element of the xml fragment as X0.
    Hope this helps.
    Regards,
    Smitha.

  • Error during XML = ABAP conversion, empty tag

    Hi.
    Im sending data from a Data Base to a proxy using BI.
    But when I get an empty response from the data base wich gives me an empty XML tag the proxy shows me an error:
    -PARSE_APPLICATION_DATA Error during XML => ABAP conversion (Response  Message; error ID: CX_ST_MATCH_ELEMENT;
    -Error during XML => ABAP conversion (Response Message; error ID: CX_ST_MATCH_ELEMENT;
    -System expected the end of the element 'STMT_DC_response'          
    This is the message that originates the fail:
    <?xml version="1.0" encoding="utf-8" ?>
    <ns0:MT_PRV23_BS_desg_response xmlns:ns0="urn:tompla-com:xi:ventas_SD">
    <STMT_response>
      <row>
       <TIPO>P</TIPO>
       <NUM_OT>55062330</NUM_OT>
       <NUM_DESGLOSE>1</NUM_DESG>
       <CANT_DESG>1724000</CANT_DESG>
      </row>
    </STMT_response>
    <STMT_DC_response />
    </ns0:MT_PRV23_BD_desg_response>
    In case that the tag is filled runs ok
    <?xml version="1.0" encoding="utf-8" ?>
    <ns0:MT_PRV23_BD_desg_response xmlns:ns0="urn:tompla-com:xi:ventas_SD">
      <STMT_response>
       <row>
        <TIPO>P</TIPO>
        <NUM_OT>55062330</NUMERO_OT>
        <NUM_DESG>1</NUM_DESG>
        <CANT_DESG>1724000</CANT_DESG>
       </row>
      </STMT_response>
      <STMT_DC_response>
       <row>
        <TIPO>P</TIPO>
        <NUMERO_OT>55062330</NUMERO_OT>
        <NUMERO_DESGLOSE />
        <COD_CAR_ADICIONA>8</COD_CAR_ADICIONA>
        <PORC_CAR_ADICION>1</PORC_CAR_ADICION>
      </row>
      </STMT_DC_response>
    </ns0:MT_PRV23_BD_desg_response>
    The definition for the data is:
    STMT_DC_response        0..1
      row                               0..n
        tipo                             0..1
    Thanks for the help you can give me about my problem with empty tags.

    I moved this question to other forum
      Expert Forums  » SAP NetWeaver  » Exchange Infrastructure 

  • Error:SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Server was unable to read request. --- There is an error in XML document (1, 447). --- Input string was not in a correct format.

    Hi All,
        We have a scenario of FTP-->PI---> Webservice.  While triggering the data in the FTP, it is failing in the PI with the below error
    SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Server was unable to read request. ---> There is an error in XML document (1, 447). ---> Input string was not in a correct format.
    Can you please help?

    Hi Raja- It seems to be a data quality issue.
    Check for the value @ 1447 position in the xml message that you are trying to send to web service..
    may be a date filed/decimal value which is not in expected format.

  • XML to ABAP Conversion Error - CX_SY_CONVERSION_DATA_LOSS

    REPORT  y_rpt_test                              .
    TYPE-POOLS sscr.
    DATA: restrict TYPE sscr_restrict,
    opt_list TYPE sscr_opt_list,
    *** TYPE sscr_***.
    DATA: options TYPE STANDARD TABLE OF rfc_db_opt ,
    fields TYPE STANDARD TABLE OF rfc_db_fld ,
    meta TYPE STANDARD TABLE OF ywas_metadata ,
    xml_out TYPE string .
    data: xml_out_x type xstring.
    DATA: wa_options LIKE LINE OF options,
    wa_fields LIKE LINE OF fields ,
    wa_meta LIKE LINE OF meta .
    FIELD-SYMBOLS: <outtab> TYPE ANY TABLE,
    <l_line> TYPE ANY,
    <l_field> TYPE ANY.
    DATA: new_table TYPE REF TO data.
    DATA: new_line TYPE REF TO data.
    DATA: xslt_error TYPE REF TO cx_xslt_exception ,
    xslt_message TYPE string .
    DATA: it_fieldcat TYPE lvc_t_fcat,
    is_fieldcat LIKE LINE OF it_fieldcat.
    TYPES: BEGIN OF s_text,
             partnum(18)     TYPE c,
             LONG_DESC(3000)    TYPE c,
           END OF s_text.
    data: lt_outtab type standard table of s_text,
          is_outtab type s_text.
    data: it_temp_text(1000)  TYPE c OCCURS 0 with header line.
    data : l_file TYPE string value 'C:xmlload.xml'.
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
        filename                      = l_file
        FILETYPE                      = 'ASC'
      tables
        data_tab                      = it_temp_text.
    loop at it_temp_text.
        concatenate xml_out it_temp_text into xml_out.
    endloop.
        IF NOT xml_out IS INITIAL .
          TRY .
              CALL TRANSFORMATION (`ZTEST1`)
              SOURCE XML xml_out
              RESULT outtab = lt_outtab.
            CATCH cx_xslt_exception INTO xslt_error.
              xslt_message = xslt_error->get_text( ).
              WRITE:/ xslt_message .
          ENDTRY.
        ENDIF .
        break-point.
        write : / 'test'.
    ==========================================================
    I am using above code to convert input XML file into internal table I am getting conversion error. My input XML file looks is as follows. It is throwing this error in call transformation. Appreciate your help in Advance.
    <MODIFIED BY MODERATOR - RESPECT THE 2,500 CHAR LIMIT>
    Code Formatted by: Alvaro Tejada Galindo on Jan 4, 2010 3:31 PM

    Thanks for quick response.
    I think the problem is with special characters in the input XML file. If I don't have special characters in XML file then it works fine.
    Anyway here is the XSLT code. This is a generic XSLT code which I used from one of the examples
    posted on this site.
    <?xml version="1.0" encoding="iso-8859-1"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:xa="urn:schemas-microsoft-com:xml-analysis:mddataset" xmlns:asx="http://www.sap.com/abapxml" version="1.0">
    <xsl:output method="xml" />
    <xsl:variable name="fieldNames" select="//asx:abap/asx:values/FIELDCAT" />
    <xsl:template match="/">
    <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
    <asx:values>
    <!--FIELDCAT>
    <xsl:apply-templates select="//YWAS_METADATA" />
    </FIELDCAT-->
    <OUTTAB>
    <xsl:apply-templates select="//item" />
    </OUTTAB>
    </asx:values>
    </asx:abap>
    </xsl:template>
    <xsl:template match="//YWAS_METADATA">
    <item>
    <xsl:for-each select="*">
    <!--column ><xsl:apply-templates/></column-->
    <xsl:copy>
    <xsl:apply-templates select="@*|*|text()"/>
    </xsl:copy>
    </xsl:for-each>
    </item>
    </xsl:template>
    <xsl:template match="//item">
    <item>
    <xsl:for-each select="*">
    <!--column ><xsl:apply-templates/></column-->
    <xsl:copy>
    <xsl:apply-templates select="@*|*|text()"/>
    </xsl:copy>
    </xsl:for-each>
    </item>
    </xsl:template>
    </xsl:stylesheet>

  • ResultSet XML Conversion Error

    Hi,
    BPEL, SOA 11g, DB2 Stored procedure,
    In a BPEL service I am getting this error while invoking a DB2 Stored procedure with Strong XSD. I am using assign to copy the input parameter to the input parameters of Stored procedure.
    not able to figure out why this error message is coming.
    java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'JDE_DBA' failed due to: ResultSet XML Conversion Error. An error occurred while converting from a ResultSet to XML. Unable to convert a ResultSet to XML. Cause: java.lang.NullPointerException ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:575) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:381) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:298) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.el.parser.AstValue.invoke(AstValue.java:157) at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283) a
    ---------------- BPEL Code --------
    <?xml version = "1.0" encoding = "UTF-8" ?>
    <!--
    Oracle JDeveloper BPEL Designer
    Created: Fri Dec 10 10:24:23 PST 2010
    Author: chaitanyad
    Purpose: Synchronous BPEL Process
    -->
    <process name="UPCMatchOrder"
    targetNamespace="http://xmlns.oracle.com/CD_JDE_Application_jws/JDE_UPCMatchOrder/UPCMatchOrder"
    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:client="http://xmlns.oracle.com/CD_JDE_Application_jws/JDE_UPCMatchOrder/UPCMatchOrder"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:ns1="http://xmlns.oracle.com/pcbpel/adapter/db/CD_JDE_Application/JDE_UPCMatchOrder/JDE_DBA"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ns2="http://xmlns.oracle.com/pcbpel/adapter/db/QAMODA73/X56714P/">
    <!--
    PARTNERLINKS
    List of services participating in this BPEL process
    -->
    <partnerLinks>
    <!--
    The 'client' role represents the requester of this service. It is
    used for callback. The location and correlation information associated
    with the client role are automatically set using WS-Addressing.
    -->
    <partnerLink name="upcmatchorder_client" partnerLinkType="client:UPCMatchOrder" myRole="UPCMatchOrderProvider"/>
    <partnerLink name="JDE_DBA" partnerRole="JDE_DBA_role"
    partnerLinkType="ns1:JDE_DBA_plt"/>
    </partnerLinks>
    <!--
    VARIABLES
    List of messages and XML documents used within this BPEL process
    -->
    <variables>
    <!-- Reference to the message passed as input during initiation -->
    <variable name="inputVariable" messageType="client:UPCMatchOrderRequestMessage"/>
    <!-- Reference to the message that will be returned to the requester-->
    <variable name="outputVariable" messageType="client:UPCMatchOrderResponseMessage"/>
    <variable name="Invoke_1_InputVariable" messageType="ns1:args_in_msg"/>
    <variable name="Invoke_1_OutputVariable" messageType="ns1:args_out_msg"/>
    </variables>
    <!--
    ORCHESTRATION LOGIC
    Set of activities coordinating the flow of messages across the
    services integrated within this business process
    -->
    <sequence name="main">
    <!-- Receive input from requestor. (Note: This maps to operation defined in UPCMatchOrder.wsdl) -->
    <receive name="receiveInput" partnerLink="upcmatchorder_client" portType="client:UPCMatchOrder" operation="process" variable="inputVariable" createInstance="yes"/>
    <!-- Generate reply to synchronous request -->
    <assign name="Assign_3">
    <copy>
    <from variable="inputVariable" part="InputMessage"/>
    <to variable="Invoke_1_InputVariable" part="InputParameters"/>
    </copy>
    </assign>
    <invoke name="Invoke_1" inputVariable="Invoke_1_InputVariable"
    outputVariable="Invoke_1_OutputVariable" partnerLink="JDE_DBA"
    portType="ns1:JDE_DBA_ptt" operation="JDE_DBA"/>
    <assign name="Assign_2">
    <copy>
    <from variable="Invoke_1_OutputVariable" part="OutputParameters"/>
    <to variable="outputVariable" part="OutputMessage"/>
    </copy>
    </assign>
    <reply name="replyOutput" partnerLink="upcmatchorder_client" portType="client:UPCMatchOrder" operation="process" variable="outputVariable"/>
    </sequence>
    </process>
    Regards,
    -CD

    Hi Sanjay,
    The JDBC sender adapter returns the rows selected from the database in the follwoing format.
    <resultset>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    </resultset>
    This error occurs , when the source datatype you have created for the JDBC adapter does not match with this format. I would suggest that you check the source format along with the occurence of your field.
    Regards,
    Bhavesh

  • RFC_to_File scenario: error in request message mapping

    Hi!
    I am configuring RFC_to_File scenario.
    The error at the begining is:
    com.sap.aii.utilxi.misc.api.BaseRuntimeException thrown during application mapping com/sap/xi/tf/_MM_Z_RFB_MATERIALEINGABE_PBU_zu_MT
    : Fatal Error: com.sap.engine.lib.xml.parser.Parser
    Exception of class CX_XMS_SYSERR_MAPPING
    When I display the request message mapping are of the message I can see:
    <Trace level="1" type="T">Interface-Mapping http://www.sap-press.de/xi/training/PBU_00 IM_Z_RFB_MATERIALEINGABE_PBU_zu_MI_Material_Async_In</Trace>
    <Trace level="1" type="T">RuntimeException during appliction Java mapping com/sap/xi/tf/_MM_Z_RFB_MATERIALEINGABE_PBU_zu_MT_Material_</Trace>
    <Trace level="1" type="T">com.sap.aii.utilxi.misc.api.BaseRuntimeException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser : #0 not allowed in Character data sections(:main:, row:1, col:202) at com.sap.aii.mappingtool.tf3.Transformer.checkParserException(Transformer.java:187) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:151) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:105) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:92) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest
    Can some one help me to solve this problem?
    Thank you very much!
    regards
    Holger

    Holger,
    Message Mapping Failed.
    >com.sap.engine.lib.xml.parser.ParserException: XMLParser : #0 not allowed in Character data >sections(:main:, row:1, col:202) at com.sap.aii.mappingtool.tf3.Transformer.checkParserException
    You are Passing Char to a field, which is not as per the Message Mapping rule
    Cheers
    Agasthuri Doss

  • "character conversion error" while parsing xml files

    Hello,
    I'm trying to parse MusicXML (Recordare) files, but I'm getting an exception.
    I'm using the SAX parser (javax.xml.parsers.SAXParser).
    Here is the code I use to instantiate it:
    final javax.xml.parsers.SAXParserFactory saxParserFactory = javax.xml.parsers.SAXParserFactory.newInstance();
    final javax.xml.parsers.SAXParser saxParser = saxParserFactory.newSAXParser();
    final org.xml.sax.XMLReader parser = saxParser.getXMLReader();
    I'm using my own handler, but I get the same exception even if I use org.xml.sax.helpers.DefaultHandler.
    The error I get is:
    Character conversion error: "Illegal ASCII character, 0xc2" (line number may be too low).
    The first few lines of my xml files look like this:
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <!DOCTYPE score-partwise
    PUBLIC "-//Recordare//DTD MusicXML 0.6 Partwise//EN"
    "http://www.musicxml.org/dtds/partwise.dtd">
    <score-partwise>
    [...etc...]
    If I delete the <!DOCTYPE ...> line, then I don't get the exception anymore. But the MusicXML files I get (from some other program) always contain this line, and it would be quite some work to delete them from every file manually.
    So does anyone know if there is a way to avoid deleting that line in every file, while still being able to parse the xml files without exceptions?
    Or maybe does anyone know what the exact cause of the exception is? (because I don't know what exactly causes it)
    Thank you in advance.
    Greetz,
    Jipo

    So does anyone know if there is a way to avoid
    deleting that line in every file, while still being
    able to parse the xml files without exceptions?ok this is side-stepping the real problem but I've used this code to filterout DTD references for other reasons   public static InputStream filterOutDTDRef(InputStream in) throws IOException {
          BufferedReader iniReader = new BufferedReader(new InputStreamReader(in));
          StringBuffer newXML = new StringBuffer();
          for(String line = iniReader.readLine(); line!=null; line = iniReader.readLine())
             newXML.append(line+"\n");
          in.close();
          int s = newXML.indexOf("<!DOCTYPE ");
          if(s!=-1)
             newXML.replace(s,newXML.indexOf(">",s)+1,"");
          return new ByteArrayInputStream(newXML.toString().getBytes());
       }and it actually speeds up the parsing phase too (since the DTD ref.s were on the web and the XML standard mandates that there is a fetch for each xml file parsed..)
    you can feed the above into the InputSource constructor that takes an InputStream argument.
    Now for the real problem... 0xc2 is "LATIN CAPITAL LETTER A WITH CIRCUMFLEX" according to a unicode chart - which is not an ASCII character (as the error message correctly reports). I'm not sure why the file is being parsed as ASCII though? You could try parsing in a FileReader to the inputsource and hope it picks up the default character encoding of your system, and that that character encoding matches the file. Or you could try passing in a FileReader constructed with a explicit character encoding (eg "UTF8") and see if that does the trick?
    asjf

  • HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: String index out of range: -7

    All -
    I'm new to consuming web services in JDeveloper. I'm using Oracle JDEV 10.1.3.3/OC4J.  I'm using this version since it is compatible with Oracle EBS 12.1.3.  My intent is to pull data from our third party recruitment app (Success Factors) and load that data into Oracle HRIS.  I'm already doing this through a .NET application.  I'm converting it to be a Java Concurrent Program in EBS.  The code listed below is a stub call to verify I'm on the right track. I created a JDeveloper Web Services proxy project.  I'm testing it locally on my windows desktop.  When I'm able to consume the service successfully, then I'll think about moving it to the EBS server.
    I'm getting the following error when I invoke the following service:
    HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: String index out of range: -7
    End point is: https://api4.successfactors.com/sfapi/v1/soap?wsdl
    Any help/assistance would be much appreciated. 
    Below is my code and output of my test:
    package emsc.oracle.apps.emscper.sfapi.proxy;
    import HTTPClient.HTTPConnection;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.IsValidSession;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.IsValidSessionResponse;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.Login;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.LoginResponse;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.LoginResult;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.Logout;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.LogoutResponse;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.SFCredential;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.SFParameter;
    import emsc.oracle.apps.emscper.sfapi.proxy.types.sfobject_sfapi_successfactors_com.Error;
    import java.io.File;
    import javax.xml.rpc.ServiceFactory;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Date;
    import javax.xml.ws.BindingProvider;
    import javax.xml.soap.SOAPException;
    import java.util.Map;
    import oracle.security.ssl.OracleSSLCredential;
    public class SFAPITest {
        // Declare members:      
        private String companyId;
        private String userName;
        private String password;
        private String developerKey;
        private Date   effDt;
        private String greaterThanEffDt;
        private String lessThanEffDt;
        // Declare constants:      
        final static private String breakLine = "+---------------------------------------------------------------------------+";
        final static private String format    = "yyyy-mm-dd";      
        private enum ReqId {
            PrimaryReq(25),
            PrimaryReqCEO(26),
            EmCarePrimary(27),
            RTI(28),
            EmCareClinical(29);
            private int reqId; 
            private ReqId() {
            private ReqId(int value) {
                reqId = value;
            public int getReqId() {
                return reqId;
        // Getters and Setters:  
        protected String getCompanyId() {
           return this.companyId;
        protected void setCompanyId(String value) {
           this.companyId = value;                 
        protected String getUserName() {
           return this.userName;
        protected void setUserName(String value) {
           this.userName = value;                 
        protected String getPassword() {
           return this.password;
        protected void setPassword(String value) {
           this.password = value;                 
        protected String getDeveloperKey() {
           return this.developerKey;
        protected void setDeveloperKey(String value) {
           this.developerKey = value;                 
        protected Date getEffDt() {
            return this.effDt;
        protected void setEffDt(Date value) {
            this.effDt = value;                 
        protected String getGreaterThanEffDt() {
           return this.greaterThanEffDt;
        protected void setGreaterThanEffDt(String value) {
           this.greaterThanEffDt = value;                 
        protected String getLessThanEffDt() {
           return this.lessThanEffDt;
        protected void setLessThanEffDt(String value) {
           this.lessThanEffDt = value;                 
        public void runProgram()
            SFAPIService mySFAPIService;
            String CompletionText = "";
            String effDtStr2 = null;
        /* Code your program logic here.
        * Use getJDBCConnection method to get the connection object for any
        * JDBC operations.
        * Use CpContext provided commit,rollback methods to commit/rollback
        * data base transactions.
        * Don't forget to release the connection before returning from this
        * method.
        /* Call setCompletion method to set the request completion status and
        * completion text.
        * Status values are ReqCompletion.NORMAL,ReqCompletion.WARNING,
        * ReqCompletion.ERROR.
        * Use Completion text message of length 240 characters. If it is more
        * than 240 then full string will appear in log file and truncated 240
        * characters will be used as request completion text.
        try
            ServiceFactory factory = ServiceFactory.newInstance();
            mySFAPIService = (emsc.oracle.apps.emscper.sfapi.proxy.SFAPIService)factory.loadService(emsc.oracle.apps.emscper.sfapi.proxy.SFAPIService.class);      
            SFAPI api = mySFAPIService.getSFAPI();
           /// SFAPI api = new SFAPI();
            //Map<String, Object> requestContext = ((BindingProvider) api).getRequestContext();
            //requestContext.put(BindingProvider.SESSION_MAINTAIN_PROPERTY, true);
            System.out.println("ServiceName => " + mySFAPIService.getServiceName().toString());
            System.out.println("End Point   => " + mySFAPIService.getServiceName().toString());
            System.out.println(breakLine);
            // Authentication: Login to SFAPI:
            SFCredential credential = new SFCredential();
            // Fake credentials being passed in for this post:   
            credential.setCompanyId("XXX");
            credential.setUsername("XXX");
            credential.setPassword("XXX");
            credential.setDeveloperKey("XXX");
            HTTPConnection httpsConnection = null;       
            OracleSSLCredential _credential = new OracleSSLCredential();      
            _credential.setWallet("\\\\\\C:\\Program Files\\Java\\jdk1.6.0_33\\jre\\lib\\security", "ParkEstes3");
            /*System.setProperty("javax.net.ssl.trustStore","C:\\\\\OraHome_1\\jdev\\jdevbin\\jdk\\jre\\lib\\security\\keystore");
            System.setProperty("javax.net.ssl.trustStorePassword","changeit");  
            System.out.println(System.getProperty("javax.net.ssl.trustStore"));*/
            // SFParameter: Define a generic SFParameter List.  This is a necessary parameter
            // to invoking calls in SFAPI:      
             /*System.setProperty("javax.net.ssl.keyStore",
             "file:\\\C:\\jdk1.4.1\\jre\\lib\\security\\client.keystore");
             System.setProperty("javax.net.ssl.keyStorePassword","welcome");         */
            /*  System.setProperty("oracle.net.wallet_location",
                          "(SOURCE=(METHOD=file)(METHOD_DATA=(DIRECTORY=\\\C:\Users\dparrish\Oracle\WALLETS)))");  // (2)                     */
            File kstore = new File("C:\\OraHome_1\\jdev\\jdevbin\\jdk\\jre\\lib\\security\\jssecacerts");
            boolean exists = kstore.exists();
            if (!exists) {
                System.out.println("Keystore does not exist");
            else {
                System.out.println("Keystore does exist");
            System.setProperty("javax.net.ssl.trustStore", kstore.getAbsolutePath());
            System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
            //System.setProperty("proxySet", "false");
            //System.setProperty("http.proxyHost", "127.0.0.1");
            //System.setProperty("http.proxyPort", "8080");
            System.out.println(kstore.getAbsolutePath());
            List<SFParameter> lst = new ArrayList<SFParameter>();
            SFParameter param = new SFParameter();
            param.setName("");
            param.setValue("");
            lst.add(param);      
            SFParameter[] sfParam = lst.toArray(new SFParameter[lst.size()]);
            Login login = new Login();
            try {
                login.setCredential(credential);
                System.out.println("1");
                login.setParam(sfParam);
                System.out.println("2");
                LoginResponse loginResponse = new  LoginResponse();
                LoginResult loginResult = new LoginResult();
                try {
                     loginResponse = api.login(login);               
                catch (Exception e ) {
                    System.out.println(e.getMessage());
                System.out.println("3");
                try {               
                     loginResult = loginResponse.getResult();
                catch (Exception e ) {
                    System.out.println(e.getMessage());
                System.out.println("4");
                IsValidSession vs = new IsValidSession();                  
                IsValidSessionResponse isValidSessionResponse = api.isValidSession(vs);
                System.out.println("5");
                if (isValidSessionResponse.isResult()) {
                     System.out.println("Session is valid");
                     System.out.println("Result => " + loginResult.getSessionId());
                     System.out.println(breakLine);              
                    Logout logout = new Logout();
                    LogoutResponse logoutResponse = api.logout(logout);
                    if (logoutResponse.isResult()) {
                         System.out.println("Logout of SFAPI Successful");
                    else {
                        System.out.println("Logout of SFAPI Unsuccessful");
                else {
                     System.out.println("Session is invalid");
                    List<Error> errors = new ArrayList<Error>();
                    for (int i = 0; i < loginResult.getError().length;  i++) {
                        errors.add(loginResult.getError()[i]);
                    for (int i = 0; i < errors.size(); i++) {
                         System.out.println("Error Indice   => " + i);
                         System.out.println("Error Code:    => " + errors.get(i).getErrorCode());
                         System.out.println("Error Message: => " + errors.get(i).getErrorMessage());
                         System.out.println(breakLine);                                                          
                    } // end for loop of SFObject errors
                } // end InvalidSession
            catch (Exception e)
                 System.out.println("Session Credential Exception");
                 System.out.println("Exception => " + e.getMessage());
                 System.out.println(breakLine);                   
        catch (Exception e)
            System.out.println("Parameter List Exception");
            System.out.println("Exception => " + e.getMessage());
            System.out.println(breakLine);
        }   // end runProgram
        // Constructor:
        public SFAPITest()  {
        } // end constructor
        public static void main (String args[]) {
            try
                SFAPITest test = new SFAPITest();        
                test.runProgram();
            catch (Exception e) {
                System.out.println("main exception => " + e.getMessage());
    } // SFAPITest
    Here is the output with trace:
    WARNING: Unable to connect to URL: https://api4.successfactors.com:443/sfapi/v1/soap due to java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: String index out of range: -7
    Session Credential Exception
    Exception => ; nested exception is:
        HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: String index out of range: -7
    +---------------------------------------------------------------------------+
    Process exited with exit code 0.

    The other end is throwing back a programming error.
    That might be because you are sending incorrect data and the other end fails to validate it.
    You might be able to guess based on your C# code.  But, since you are using soap one generic solution is available to you.
    - Get an http proxy interceptor like wireshark.
    - Run it while your C# app runs, collect the http requests from that.
    - Run it while running your java code, collect the http requests from that.
    Compare the two.

Maybe you are looking for