cancel
Showing results for 
Search instead for 
Did you mean: 

XSLT Mapping Error - Split-MappingRoot-Tag missing

Former Member
0 Kudos

Hi,

I am getting "Split-MappingRoot-Tag missing" Error while using XSLT mapping. I am using 3 mappings in one Operation Mapping.

1) Java Mapping 2) Message Mapping 3) XSLT Mapping.

When I have these mappings in a BPM one after another it is working fine.

But ,if I put these mappings one after another in one Operation mapping it is giving problem after message mapping is complete.

I tried to remove XSLT mapping and Msg Mapping is producing correct output which can be used as input for XSLT mapping.

Any idea what could be the reason. Any hep is appreciated.

ERROR

<SAP:Code area="MAPPING">GENERIC</SAP:Code>

<SAP:P1>Split-Mapping</SAP:P1>

<SAP:P2>Root-Tag missing</SAP:P2>

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:Stack>Split-MappingRoot-Tag missing</SAP:Stack>

<SAP:Retry>M</SAP:Retry>

Is there any chance XSLT mapping starting before message mapping is complete

Regards,

Ramesh

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi ,

If its in sequence one will not execute before the other ,

if its split mapping use this in the XSLT declartion:

xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"

This should work ...thanks

Former Member
0 Kudos

Thank you for your response.

I tried to put XSL in the following format by adding that namespace. but it still giving same error.

<?xml version="1.0"?>

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

-


Code ---

</xsl:stylesheet>

Also I itried to put Java mapping before XSLT mapping to see what payload is coming to XSLT.

I am getting payload as:

<?xml version="1.0" encoding="UTF-8"?> <ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1>

-


XML Payload Data --

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

Any one knows how to fix this issue? appreciate your inputs

Regards,

Ramesh

Former Member
0 Kudos

Hi,

I suggest to import the output XML of message mapping (graphical) to a xslt tool like stylus studio and try to excute your xlst code.

It will be easy to debug this way.

When the xslt map was developed, it might have developed based on a source structure and there might be a difference between the XML structure used for xlst and the actual output from graphical mapping.

Former Member
0 Kudos

If XSLT is applied on that XML it is generating output without problem.

In operation mapping, Source has 0..unbounded and Target has 1 occurance.

Operation mapping has 3 mappings in sequence: 1) Java 2) Message 3) XSLT

message mapping has similar Occurance as Operation mapping.

It seems XSLT mapping is giving problem if we have 0..unbounded as source occurance in OM

I tried to test with only XSLT mapping in OM , and it is giving same error if I have 0..unbounded occurance.

Does anybody know how to use XSLT mapping in an Operation Mapping having 0..unbounded occurance in Source.

Thanks for your help in advance.

Regards,

Ramesh

former_member194786
Active Contributor
0 Kudos

Hi Ramesh,

I have not used XSLT mapping as such, hence not sure. But can you please confirm if the XSLT code is handling the follwoing tags:

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

<ns0:Message1>

Have a quick look at this link for more details:

http://wiki.sdn.sap.com/wiki/display/Java/MultiMappingwithJavaandXSLTmappings

Regards,

Sanjeev.

Former Member
0 Kudos

This problem is solved.

When we are having 0..unbounded source message then we must generate "MyData" output as below :

<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">

<ns0:Message1>

<MyData>

-


</MyData>

</ns0:Message1>

</ns0:Messages>

Also,we need to modify XPath expressions as //MyData/<otherSegment>/<fldName> from MyData/<otherSegment>/<fldName> so that it resolves XPath. If we have MyData segments at different levels of XML then probably we should try like ../MyData or something like that ( I did not test this).

Thanks all of you to share your ideas.

Regards,

Ramesh