Skip to Content
avatar image
Former Member

What could be the reason for this error in SAP PI Interface determination & Mapping test?

Hi everyone,

I've been dealing with this error for the last couple of weeks and I've come to the end if ideas. PI version I have is 7.11.

I've developed a multimapping solution, where MM fills the data into two messages, based on field values. I can test the MM and OM (I've got a XSLT transform in there as well) and the test shows the result, I am looking for. No errors whatsoever. XML is well formated, I am using a copy of the message from the production system.

However, when I go into Integration Builder and test my Receiver Determination scenario with the same data, I get the following error:

<SAP:Category>XIServer</SAP:Category> <SAP:Code area="MAPPING">GENERIC</SAP:Code> <SAP:P1>com/sap/xi/tf/_MM_TESTMAPPING_</SAP:P1> <SAP:P2>com.sap.aii.utilxi.misc.api.BaseRuntimeException:</SAP:P2> <SAP:P3>Fatal Error: com.sap.engine.lib.xml.parser.ParserE</SAP:P3> <SAP:P4>xception: XMLParser: No data allowed here (:main:~</SAP:P4> <SAP:AdditionalText/> <SAP:Stack>com/sap/xi/tf/_MM_TESTMAPPING_com.sap.aii.utilxi.misc.api.BaseRuntimeException:Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here (:main:~ </SAP:Stack>

Unfortunatelly, the log is truncated and when I go to NetWeaver Administrator and into Log Viewer, I see 5 or 6 error messages, that all have the following lines in common:

Caused by: com.sap.aii.utilxi.misc.api.BaseRuntimeException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here (:main:, row:55, col:8)

Caused by: com.sap.engine.lib.xml.parser.NestedSAXParseException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: XMLParser: No data allowed here (:main:, row:55, col:8)

Any ideas or suggestions?

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

5 Answers

  • avatar image
    Former Member
    Mar 01, 2017 at 01:48 PM

    Hi Demsar,

    1. Try to take the payload from the from the message monitor and place it in the message mapping and check if it process successfully.

    2. I think you are trying to do 1:n mapping in it. Are you able to do any 1:n mapping of this similar format before in this version.

    If not could you please try with some simple mapping for 1:n interface and test it complete end to end and check if you are getting any similar error.

    3. If possible could you please share the source and target structure and the confiugration of MM and OM.

    Regards,

    Avinash.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Test payload:

      http://www.w3.org/2001/XMLSchema" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance">

      4761231 Fontman XML Bridge FS_TR_006 2017-03-01T12:27:24.9567913+01:00 http://www.w3.org/2001/XMLSchema" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> 425585 1 5 1100 D03970531 2017-02-20T11:15:33.0000000+01:00 K116 0.800 0.080 0.000 0.880 0 0 0 101567 0 40578 1.000 KOS 0 0 10 1159127001 0.8000 0.000 0.000

      This same payload is used also in the Integration directory test, but that one fails with:

      <Trace levl="1" type="B">CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV</Trace>
      <Trace level="2" type="T">......attachment XI_Context not found </Trace>
      <Trace level="3" type="T">Mapping already defined in interface determination </Trace>
      <Trace level="3" type="T">Object ID of Interface Mapping 13D79BD07F66369EB4573B97CD66CE25 </Trace>
      <Trace level="3" type="T">Version ID of Interface Mapping 48D55B5093D711E29D73E0B4AC1E15DE </Trace>
      <Trace level="1" type="T">Mapping-Object-Id:13D79BD07F66369EB4573B97CD66CE25 </Trace>
      <Trace level="1" type="T">Mapping-SWCV:48D55B5093D711E29D73E0B4AC1E15DE </Trace>
      <Trace level="1" type="T">Mapping-Step:1 </Trace>
      <Trace level="1" type="T">Mapping-Type:XSLT </Trace>
      <Trace level="1" type="T">Mapping-Program:FONTMAN_2_SAP </Trace>
      <Trace level="1" type="T">Mapping-Step:2 </Trace>
      <Trace level="1" type="T">Mapping-Type:JAVA </Trace>
      <Trace level="1" type="T">Mapping-Program:com/sap/xi/tf/_MM_FSTR006_2_ROUTEACCOUNT_STORNO_ </Trace>
      <Trace level="3" type="T">MTOM Attachments Are Written to the Payload </Trace>
      <Trace level="3" type="T">Dynamic Configuration Is Empty </Trace>
      <Trace level="3" type="T">Executing multi-mapping </Trace>
      <Trace level="3" type="T">Creating mapping sequence with 2 steps. </Trace>
      <Trace level="3" type="T">Creating step 0. </Trace>
      <Trace level="3" type="T">Creating step 1. </Trace>
      <Trace level="3" type="T">Start executing mapping sequence with 2 steps. </Trace>
      <Trace level="3" type="T">Executing mapping step 0 </Trace>
      <Trace level="2" type="T">Call XSLT processor with stylsheet FONTMAN_2_SAP.xsl. </Trace>
      <Trace level="2" type="T">Returned form XSLT processor. </Trace>
      <Trace level="3" type="T">XSLT transformation: FONTMAN_2_SAP.xsl completed with 0 warning(s). </Trace>
      <Trace level="3" type="T">Mapping step 0 has been executed. </Trace>
      <Trace level="3" type="T">Executing mapping step 1 </Trace>
      <Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._MM_FSTR006_2_ROUTEACCOUNT_STORNO_ </Trace>
      <Trace level="1" type="T"> *** START APPLICATION TRACE *** </Trace>
      <Trace level="3" type="T">Document start </Trace>
      <Trace level="3" type="T">Start tag [ns0:Messages] </Trace>
      Add raw attribute [ xmlns:ns0=" http://sap.com/xi/XI/SplitAndMerge"]
      <Trace level="3" type="T">Start tag [ns0:Message1] </Trace>
      <Trace level="3" type="T">Start tag [ns1:MT_ROUTEACCOUNT] </Trace>
      Add raw attribute [ xmlns:ns1="urn: lj-mlek.si:frontman"]
      <Trace level="3" type="T">Start tag [ID] </Trace>
      <Trace level="3" type="T">Put value [4761231] </Trace>
      <Trace level="3" type="T">Close tag [ID] </Trace>
      <Trace level="3" type="T">Start tag [INTERFACE] </Trace>
      <Trace level="3" type="T">Put value [FS_TR_006] </Trace>
      <Trace level="3" type="T">Close tag [INTERFACE] </Trace>
      <Trace level="3" type="T">Start tag [CCUSVI0] </Trace>
      <Trace level="3" type="T">Start tag [ISGENERALHD] </Trace>
      <Trace level="3" type="T">Start tag [TOUR_ID] </Trace>
      <Trace level="3" type="T">Put value [425585] </Trace>
      <Trace level="3" type="T">Close tag [TOUR_ID] </Trace>
      <Trace level="3" type="T">Start tag [MISSION_ID] </Trace>
      <Trace level="3" type="T">Put value [1] </Trace>
      <Trace level="3" type="T">Close tag [MISSION_ID] </Trace>
      <Trace level="3" type="T">Close tag [ISGENERALHD] </Trace>
      <Trace level="3" type="T">Start tag [ISCUSTOMERHD] </Trace>
      <Trace level="3" type="T">Start tag [VISIT_ID] </Trace>
      <Trace level="3" type="T">Put value [5] </Trace>
      <Trace level="3" type="T">Close tag [VISIT_ID] </Trace>
      <Trace level="3" type="T">Start tag [CUSTOMER] </Trace>
      <Trace level="3" type="T">Put value [101567] </Trace>
      <Trace level="3" type="T">Close tag [CUSTOMER] </Trace>
      <Trace level="3" type="T">Start tag [CPD] </Trace>
      <Trace level="3" type="T">Put value [0] </Trace>
      <Trace level="3" type="T">Close tag [CPD] </Trace>
      <Trace level="3" type="T">Close tag [ISCUSTOMERHD] </Trace>
      <Trace level="3" type="T">Start tag [ISCUSTOMERADDR] </Trace>
      <Trace level="3" type="T">Start tag [VISIT_ID] </Trace>
      <Trace level="3" type="T">Put value [5] </Trace>
      <Trace level="3" type="T">Close tag [VISIT_ID] </Trace>
      <Trace level="3" type="T">Start tag [NAME1] </Trace>
      <Trace level="3" type="T">Put value [] </Trace>
      <Trace level="1" type="T"> *** TRACE TRUNCATED (for more details see Visual Administrator -> LogViewer)*** </Trace>
      <Trace level="1" type="E">CL_XMS_PLSRV_MAPPING~ENTER_PLSRV</Trace>
      Unfortunately, when I go check in the NWA Log Viewer, I only see the "No data allowed here" error. Nothing, that would make more sense.
  • Mar 01, 2017 at 03:39 PM

    check whether you have removed split and merge namespace before testing.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      I tried removing the headers and redundant xml tags from the beginning of message. Mapping works in OM test and it returns the desired data. But still, when I go test it in Integration Directory, I get the same "No data allowed here" response.

      What bugs me most is the fact, that I can't see the full trace of mapping. It's truncated and I can't make sense from Java logs - they're rather useless, unless someone here has more experience with it.

  • avatar image
    Former Member
    Mar 02, 2017 at 11:39 AM

    Hi,

    When you test in ID the following tag should not be there.

    http://sap.com/xi/XI/SplitAndMerge">

    <ns0:Message1>

    ...

    </ns0:Message1> <ns0:Message2/> </ns0:Messages>

    Please try.

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi

      Thank you for your suggestion, I've gone back to the working MM and things are much clear to me now, regarding multimapping and Split&Merge namespace. For testing the MM I use just the message part without message tags and it works correctly.

      In my ID testing however, I use the whole message from the sender, like I have also done before. Unfortunately, I am still getting the following in the ID interface and the NWA Log Viewer:

      It looks to me, like I perhaps have something wrong in my mapping, that prevents the Interface determination from working.

      I am using a single Service interface with two operations; each with a different message type and occurence frequency; the first is always 1, while second is optional, 0..1.

  • avatar image
    Former Member
    Mar 07, 2017 at 01:40 PM

    I have done some additional testing and I get the same error in two cases;

    1. when doing the testing in Operation Mapping and I test both mapping operations at once. If I run step one first and then copy/paste the result into second part, omitting the Split&Merge tags it runs ok.

    2. when testing in Integration Directory - the entire scenario.

    The first mapping operation, that I perform is an XSLT transform, that changes the incoming XML message to conform to my requirements. The second mapping is the one performing the actual multi mapping.

    Could the problem be in the use of XSLT transform? It is very basic, just reformatting and dropping the header.

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Mar 07, 2017 at 03:15 PM

    Hi Demsar,

    Could you please let me know what is the input and output data that you are posting to the interface while testing end to end scenario and also the XSD of the same.

    Regards,

    Avinash.

    Add comment
    10|10000 characters needed characters exceeded