cancel
Showing results for 
Search instead for 
Did you mean: 

XSLT Mapping and Graphical Message Mapping

Former Member
0 Kudos

Hi,

Can any one let me which is advatageous and why or let me know where I can find docs.

Thanks In Advance.

Yaseen

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Yaseem,

XSLT should be the last option, you will be hit by performance if you were to use XSLT with very large messages. bcause it does in memory message translation/transformation.

Hence in short avoid it when you can, use the default graphical mapping if you can, followed by ABAP Mapping and Java Mapping.

cheers,

Naveen

udo_martens
Active Contributor
0 Kudos

Hi Naveen,

performance is not the only value.

XSLT is much easier to implement than the others especially grafical mapping.

In my point of view r complex Message Mappings not maintainable. It is quite difficult 2 predict the result of executing and 2 avoid runtime errors.

Java and ABAP mappings need more time 4 development and extend costs.

So as conclusion i try 2 take XSLT if there is no bottleneck with mapping performance.

Regards,

Udo

Former Member
0 Kudos

Hi Udo,

I have used a lot of XSLt outside and from my own experience(java/c#) we have been hit very hard with performance when using XSLT, it is an interpreted approach.

It may look easy, fast but in time you will pay the price. Java and ABAP mappings are compiled, and only the runtime is maintained.

Is XSLT useful, sure it is, there are many things that can be done in XSLT that is very tough to accomplish using mappings.

Should it be the first choice of development, no its a case by case basis.

Most common disadvantages of XSLT are

-Scripts rapidly explode in size

-Quite complex

-Hard to debug

-Slow processing

There is an ever ending debate on pros and cons of XSLT. It upto individual Architect to decide whatz best for the interface at hand.

cheers,

naveen

Former Member
0 Kudos

Hi Udo,

Its very helpful answer, but are there any situations where XSLT is more advantageous than Graphical message mapping?

Thanks,

Yaseen.

Former Member
0 Kudos

Hi Yaseen,

If you are much familiar with ResultList then, you can practically achieve anything using graphical message mapping without using xslt/java/abap mappings.

In this blog I had used the full power graphical message mapping and java functions in it.

/people/sap.user72/blog/2005/11/10/a-practical-implementation-of-shortest-path-problem-in-xi-part-ii

Take a look at it.

Best regards,

Felix

udo_martens
Active Contributor
0 Kudos

Hi Yaseen,

as i told, take XSL:

- if performance is NOT the bottleneck: less or small messages, asynchr messages, no problems with queueing

- if the mapping logic is complex

- if the mapping has to be good maintainable (a lot changes of mapping logic)

- Take grafical mapping if performance is a bottleneck

- Take ABAP 4 access to ABAP stack (for example database tables)

- Take Java 4 special requirements where u cant solve problems with grafical or XSL mappings

Regards,

Udo

Answers (2)

Answers (2)

STALANKI
Active Contributor
0 Kudos

We have to choose the technique for mapping after analysing the volume and frequency of messages and the complexity.

Former Member
0 Kudos

Can any one tell me... Technically in any scenario message mapping fails to fullfill the requirement.

Thanks,

Yaseen

Former Member
0 Kudos

we had a requirement were there was a recursion in a message type. There was one node which could contain a flat struture or a node of the same type, so again a flat structure or a node and so on... This can only be handled in message mapping, if you can restrict the recursion to a certain number of occurrences. If you don't know the number of occurrences you'll not be able to deal with that in a graphical mapping.

best regards

Christine

Former Member
0 Kudos

Yaseen,

Technically I have a blog containing a real life scenario where you had to map thousands of fields from BME

/people/sap.user72/blog/2005/11/15/migrate-from-bie-translations-to-sap-xi-mappings-with-ease

Here, XSLT mapping is done (jar given by BME itself).

Have a look at it.

Best regards,

Felix

Former Member
0 Kudos

Hi Yaseen,

Check this thread...

Regards

Anand