Simple XSLT mapping fails
Dear,
I'm busy creating XSLT mappings and all looks good, except for one. That one keeps failing and I just do not see why.
I tried different things, but the target structure remains empty.
Incoming message
After the mapping
XSLT mapping code
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ns1=<namespace>
xmlns:ns0=<namespace>
<xsl:template match="/">
<ns1:MessageType>
<UserId><xsl:value-of select="*/*/AuditUser"/></UserId>
<OrganisationId><xsl:value-of select="*/*/MessageType/OrganisationId"/></OrganisationId>
<OUIdArray>
<xsl:for-each select="*/*/MessageType/OUIdArray/OUId">
<OUId><xsl:value-of select="*/*/OUIdArray/OUId"/></OUId>
</xsl:for-each>
</OUIdArray>
<DateFrom><xsl:value-of select="*/*/MessageType/DateFrom"/></DateFrom>
<DateUntil><xsl:value-of select="*/*/MessageType/DateUntill"/></DateUntil>
</ns1:MessageType>
</xsl:template>
</xsl:stylesheet>
Anyone a suggestion?
Thanks a lot.
Dimitri
Hi Dimitri,
In your XSL i noticed that you have
<OUId><xsl:value-of select="*/*/OUIdArray/OUId"/></OUId>
instead of
<OUId><xsl:value-of select="*/*/MessageType/OUIdArray/OUId"/></OUId>
However, i would do in this way:
With this source XML:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<OrganisationID> 1000</OrganisationID>
<OUIdArray>
<OUId>1 </OUId>
<OUId>2 </OUId>
<OUId>3 </OUId>
</OUIdArray>
<DateFrom>01.01.2010</DateFrom>
</root>
I would use this code XSL:
<OUIdArray>
<xsl:for-each select="/root/OUIdArray/OUId">
<OUId>
<xsl:value-of select="."/>
</OUId>
</xsl:for-each>
</OUIdArray>
It's simplier under my point of view.
Hope this helps.
Regards.
Similar Messages
-
XSLT mapping sometimes throw ArrayOutOfBoundsException
Hi
I have a simple XSLT mapping that is supposed to group elements based on an identificator (number).
My issue is that when testing message through PI, it sometimes throw ArrayOutOfBoundsException and sometimes not, with the same records involved..!!
I have tested it all in XML Spy and there it always works.
The XSLT looks like this:
<xsl:for-each select="Invoice_KA49">
<xsl:variable name="Ident">
<xsl:value-of select="Identificator"/>
</xsl:variable>
<GroupElement>
<xsl:copy-of select="../[Identificator=$Ident]"/><!--../-->
</GroupElement>
</xsl:for-each>
Anyone knows why this happens? Any help would be appreciated!
Thanks.
regards OleHi Ole, looks like you produce a document with duplicate entries which have to be removed in a next step. Maybe the duplicate entries blow up the document. When you want to group Invoice_KA49 elements based on the key Identifikator, as Udo already suggest you should only select distinct values in the for-each loop, e.g.
<xsl:for-each select="//Invoice_KA49[Identifikator=not(./Identifikator=preceding-sibling::Invoice_KA49/Identifikator)]">
In this way you do not produce duplicate entries.
Unfortunately we cannot use the function
distinct-value(..)
here since it's only available in xslt 2.0.
Best regards, Martin -
How to call xslt mapping in message transformbean
Hi Folks,
I have written a simple xslt mapping to convert 2 fields into different fields. That is working fine from me.
I want to use this xslt mapping in message transformbean adapter module. I dont want to use this in operation mapping. Can you please tell me how would I do this.
How would I configure this.
Thanks,
RohiniHi,
According to me, we cannot call the xslt program/map from adapter module.
Why we can't call is in adapter module we can use java EJBs, but what ever you suppose to call is not an EJB application.
FYI
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/3bdc14e1-0901-0010-b5a9-a01e29d75a6a
Regards,
Venkata Ramesh -
XSLT mapping not working b'coz " " & " " replaced with and
Hello Experts,
I have a RFC to JMS scenario. One of the parameter of RFC is a string field. This field will contain the XML data in it.
I need to create a complete XML payload using this data in a string field. For this I am using XSLT map :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="xml" omit-xml-declaration="no"/>
<xsl:template match="/">
<xsl:for-each select="//Nem">
<xsl:copy-of select="."/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
This XSLT mapping works fine when tested independently.
But in actual scenario at runtime the "<" & ">" used to indicate a node are getting replaced with < and >. Then the XSLT mapping fails and produces no output.
The output of XSL will be passed in to a java mapping which signs the payload digitally.
What is the issue with these signs? How can I overcome this problem?
Any inputs will be of great help.
Kind Regards,
Abhijeet.
Edited by: Abhijeet Ambekar on May 4, 2010 2:01 PMHi Stefan,
Yes - I want to get rid of & # 60. But these (& # 60 and & # 62) are not added by XSLT mapping. Rather they are in the input available to XSLT map.
In sxmb_moni, i can see the inbound payload correctly :
<?xml version="1.0" encoding="UTF-8" ?>
- <rfc:HDK083_REFUS_SENDDOCU xmlns:rfc="urn:sap-com:document:sap:rfc:functions">
<P_SIGN_DOCUMENT />
<P_XML_DOCUMENT><NemRefusionIndberetningSamling><NemRefusionIndberetningStruktur MessageID="1"><HeaderStruktur><SignOffIndikator>true</SignOffIndikator><TransaktionKode>Opret</TransaktionKode><IndberetningstypeKode>Anmeldelse</IndberetningstypeKode><FravaerTypeKode>Sygdom</FravaerTypeKode><FravaerendeStruktur><FravaerendeTypeKode>Loenmodtager</FravaerendeTypeKode><LoenUnderFravaerIndikator>false</LoenUnderFravaerIndikator></FravaerendeStruktur><IndberetningUUIDIdentifikator>bf9cc44e-af15-4e19-8457-5845d75385d2</IndberetningUUIDIdentifikator><ReferenceAttributTekst>ref. Nielsen-1503831372 (23. oktober 2009)</ReferenceAttributTekst>
but when I try to download the payload or right click on payload to view source I get something like below:
<?xml version="1.0" encoding="UTF-8"?><rfc:HDK083_REFUS_SENDDOCU xmlns:rfc="urn:sap-com:document:sap:rfc:functions"><P_SIGN_DOCUMENT></P_SIGN_DOCUMENT><P_XML_DOCUMENT>& # 6 0;NemRefusionIndberetningSamling& # 62; & # 60;NemRefusionIndberetningStruktur MessageID="1"& #62;& #60;HeaderStruktur& #62;& #60;SignOffIndikator& #62;true& #60;/SignOffIndikator& #62;& #60;TransaktionKode& #62;Opret& #60;/TransaktionKode& #62;& #60;IndberetningstypeKode& #62;Anmeldelse& #60;/IndberetningstypeKode& #62;& #60;FravaerTypeKode& #62;Sygdom& #60;/FravaerTypeKode& #62;& #60;FravaerendeStruktur& #62;& #60;FravaerendeTypeKode& #62;Loenmodtager</FravaerendeTypeKode><LoenUnderFravaerIndikator& #62;false</LoenUnderFravaerIndikator></FravaerendeStruktur& #62;<IndberetningUUIDIdentifikator& #62;bf9cc44e-af15-4e19-8457-5845d75385d2& #60;/IndberetningUUIDIdentifikator& #62;& #60;ReferenceAttributTekst& #62;ref. Nielsen-1503831372 (23. oktober 2009)& #60;/ReferenceAttributTekst& #62;
(extra spaces added to "& # 60" as browser was converting it to < ,>)
If i take the source code for payload and test XSLT mapping, it fails. But if I manually replace all "& # 60" with < and "& # 6 2" with >, then the mapping works fine.
So I think for XSLT map to work correctly, we need to replace all "& # 60 " . Please suggest.
Kind Regards,
Abhijeet. -
Invalid tag generated in result XML file, xslt mapping done using MAPFORCE
HI
My requirement is File to File using xslt mapping
I have done a very simple XSLT mapping, but through MAPFORCE tool
Here are the steps, I followed:
1. Supplied source xsd and xml file to MAPFORCE
2. Supplied target xsd file
3. mapped it as required
4. tested by supplying a sample xml file by clicking OUTPUT button, which displays perfect XML structure
5. Clicked XSLT button and copied and created a new file with extension .xsl file
6. Zipped the above xsl file
7. imported into IR imported archives folder
8. Selected the above xslt mapping in my Interface mapping.
9. Now tested my Interface Mapping by supplying sample some data for the source structure.
Now I got the error or warning "XML not well-formed" and got the successfull completion message window for my mapping when I proceed.
Now when I clicked xml source button for the target structure, It displays the invalid tag and starting with "#default"
So If I removed this particular tag at the first and last lines, it becomes a valid xml structure and able to see properly in my internet explorer
Here is the result I am getting:
<?xml version="1.0" encoding="UTF-8"?>
<#default:MT_Student_Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:xsltMappingScenarios C:/DOCUME~1/Satya/Desktop/MT_Student_Result.xsd">
<Data>
<Name>Khan Raj</Name>
<Marks>
<Total_Marks>166</Total_Marks>
</Marks>
</Data>
</#default:MT_Student_Result>
When I tested through MAPFORCE it generates absolutely valid XML structure when I clicked OUTPUT button on MAPFORCE, but not when I used the xslt mapping through my interface mapping.
What is the error I am making or any step missing?
Please help me!
Edited by: Shilpa Shetty on Oct 9, 2008 4:17 AM
Edited by: Shilpa Shetty on Oct 9, 2008 5:58 AM
Edited by: Chris Rock on Oct 9, 2008 6:06 AMFor some reason when I use MapForce tool to generate my xslt mapping source, it is generating the following statement in the xsl file.
<xsl:namespace-alias stylesheet-prefix="n" result-prefix="#default"/>
So at the root element of XML file, it is replacing the character n with '#default' for some reason, I don;t know the purpose of this.
As you suggested, I changed the name space, still I experienced same problem.
It is now resolved after removing the above xsl statement from the xsl file before creating/uploading the relevant zip file into archives folder.
It works fine now. Thanks for the clue. -
Please explain XSLT mapping from initial
Hi Experts,
I have Altova XMLspy but I dont know how to use it for doing XSLT mapping.
Can anyone of you please explain a simple XSLT mapping in Altova so that I can try.I have checked many blogs related to XSLT mapping but didnt find my answers.
If you can guide me with a simple xslt mapping it would be great.
Thanks,
RaviHi Ravi
Please check the below links.
XSLT Tutorial
http://www.altova.com/documents/XMLSpyTutorial.pdf
http://www.altova.com/documents/2013/xmlspytutorialstd.pdf
http://xml-xslt-dtd-xsd.wonderhowto.com/how-to/use-xmlspy-for-xml-editing-217876/
Regards
Osman -
XML not well formed in - XSLT mapping
Hi,
I am doing a simple xslt mapping wherein my Source data structure is
MT
|__ details
|__ Records
|_emp_no
|_ emp_name
|_emp_dno
In XSL file i hv specified <xsl:template match="MT">
and I am using <for-each select="details/Records">
when I m testing it in Interface mapping, it is giving me error "XML not well formed"
can anybody please suggest whats the problem in the code??
Thank you,
Anu SinghalHi Anu,
I think in the select query in xslt mapping u have to mention the expression "//" so that for each iteration it can go according the path.
< for-each select = " //details/records">
I have some sample code of same type...just check it..
<xsl:template match="/">
<MT_EMP_TARGET>
<xsl:for-each select="//EMP_DATA">
<EMP_DATA>
<xsl:variable name="fname" select="//EMP_DATA/First_Name"/>
<xsl:variable name="lname" select="//EMP_DATA/Last_Name"/>
<Emp_Code><xsl:value-of select="//EMP_DATA/Emp_Code"/></Emp_Code>
<Name><xsl:value-of select="concat($fname,' ',$lname)"/></Name>
<Join_Dt><xsl:value-of select="//EMP_DATA/Join_Dt"/></Join_Dt>
<Designation><xsl:value-of select="//EMP_DATA/Level"/></Designation>
<Dept><xsl:value-of select="//EMP_DATA/Dept"/></Dept>
</EMP_DATA>
</xsl:for-each>
</MT_EMP_TARGET>
</xsl:template>
For more info:
http://www.w3schools.com/xsl/el_for-each.asp
Cheers,
Prasanthi.
Reward marks if helpful. -
Extracting more information from XI XSLT mapping failure
Hello
I am getting to grips with XI. When developing XSLT mappings I first run them on Stylus or XMLSpy, ensure they work, and then deploy them to XI.
Unfortunately they sometimes fail to work in XI, and the amount of information retrieved about the failure is very small.
I thought of a method to get more infomation in situations like this. I could write a Java method that sends messages to the XI console. This would involve seeing the javadoc API for GlobalContainer, Container and AbstractTrace. I would also need to have these objects in my classpath in order to compile the method. Then I could use the method in the XSL.
There are two small drawbacks to this plan: I cannot find the Javadoc or the Jar file holding the classes.
Perhaps one of you readers could either tell me where these things are, or suggest a better method of solving problems like this.
In either case I look forward to receiving a reply.
Thanks
Bill LoganThanks for the suggestion,
completely forgot about the simpler <xsl:message/> command. I tried this, and it worked fine in Stylus.....but not in XI.
I think the problem s when the file is being loaded. An alert box pops up. It says
"Transformer configuration exception occurred when loading XSLT GDS_to_DP.xsl (http://sap.com/xi/GDSConsole, 155fc320-f69f-11d8-97f7-c0140a114c15, -1)"
and the trace window says this
"10:00:13 Start of test
Creating XSLT mapping GDS_to_DP
URIResolver called with href = GDS_DP_Common.xsl and base = GDS_to_DP.xsl
Source resolved. System id = GDS_DP_Common.xsl
10:00:14 End of test"
It seems obvious (from deduction) that the problem lies in GDS_DP_Common.xsl. XI will not give me any information precisely where this occurs
Thanks for you earlier answer Alessandro -
XSLT mapping error in PI 7.1
Hi,
The below xslt compiles and runs fine with SAPXML toolkit but the same fails with error
u201CCannot find external method 'java.util.Map.get' (must be public).".
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:map="java:java.util.Map"
xmlns:dyn="java:com.sap.aii.mapping.api.DynamicConfiguration"
xmlns:key="java:com.sap.aii.mapping.api.DynamicConfigurationKey">
<xsl:output indent="no" />
<xsl:param name="inputparam"/>
<xsl:template match="/">
<!-- change dynamic configuration -->
<xsl:variable name="dynamic-conf"
select="map:get($inputparam, 'DynamicConfiguration')" />
<xsl:variable name="dynamic-key"
select="key:create('http://sap.com/xi/XI/System/File', 'Directory')" />
<xsl:variable name="dynamic-value"
select="dyn:get($dynamic-conf, $dynamic-key)" />
<xsl:variable name="new-value"
select="concat($dynamic-value, 'subfolder\')" />
<xsl:variable name="dummy"
select="dyn:put($dynamic-conf, $dynamic-key, $new-value)" />
<!-- copy payload -->
<xsl:copy-of select="." />
</xsl:template>
</xsl:stylesheet>
Regards,
VishalHi,
I am already using jdk 5 for the same.
Can you please tell me what is the setting(s) that need to be done for XSLT to be used with JDK5.
I have a knowledge on how to develop a XSLT mapping, but fail to understand what is the relation between XSLT and JDK5.
It will be very helpful to me if you post your reply to my question here: Basic Settings in Operation Mapping
Appreciate your help and time.
Thanks. -
How to Count schedule lines in IDoc ORDERS05 using XSLT Mapping
Hi Experts,
In a Scenario where we are sending Purchase order (ORDERS05) to SAP SNC using XSLT Mapping,
where in we need to count the no. of schedule lines against the Purchase Order line.
As in Schedule line segment there is no such provision, so it needs to be handle in XSLT mapping to count the schedule lines.
Can you all please guide me how to go about the same.
Regards,
Nitin PHi Satish,
Thank you very much for the reply,
as there is only Quantity and other information is maintained against schedule lines how we can count the schedule line repeatation against PO line ? Is that very simple as you suggested or some other consideration also needs to be taken.
Please clarify the same and let me also know if there are some standard documents also for the same.
Regards,
Nitin P -
Graphical Mapping Vs XSLT mapping Vs Java Mapping Vs ABAP Mapping
Hi Experts,
I have a question regarding different message mapping options available in XI namely
Graphical Mapping
XSLT mapping
Java Mapping
ABAP Mapping
Q1: Which amoung the above mappings is the best and why?
Q2: On what cases Graphical, XSLT, Java and ABAP Mapping should be used?
Q3: Is it true that graphical and XSLT mappings are converted into Java class internally?
Kindly help!
Thanks
Gopal
Message was edited by:
gopalkrishna baligaHi,
There is no hard and fast rule for using the mapping techniques.
Graphical Mapping is used for simple mapping cases. When, the logic for your mapping is simple and straight forward and it does not involve mult hiearchical mapping requirement. and context handling.
Java and XSLT mapping are used when graphical mapping cannot help you.
When the choice is between Java And XSLT, XSLT is simpler than java mapping and easier. But, it has its drawbacks. XSLT can lead to a bad perfrormance if the Source XML is huge.
Java Mapping uses 2 types of parsers. DOM and SAX. DOM is easier to use with lots of classes to help you create nodes and elements, but , DOM is very processor intensive.
SAX parser is something that parses your XML one after the other, and so is not processor intensive. But, it is not exaclty easy to develop either.
For further info on each of the mapping, refer to these links,
Graphical Mapping,
http://help.sap.com/saphelp_nw04/helpdata/en/6d/aadd3e6ecb1f39e10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
XSLT Mapping
http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
http://www.w3.org/TR/xslt20/
Java Mapping
http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
DOM parser API
http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
Also, check this thread for more info,
Different types of Mapping in XI
Am not sure about XSLT , but , yes graphical mapping is converted into java classes internally and these classes use SAX parsing as well.
Regards,
Bhavesh -
Java ,abap and XSLT mapping
Hi all,
can any one provide some material on java ,ABA and XSLT mapping(as i got requirement on my current project)..
thanks in advance.
regards
krish..Hi
All mapping related links
There is no hard and fast rule for using the mapping techniques.
Graphical Mapping is used for simple mapping cases. When, the logic for your mapping is simple and straight forward and it does not involve any complex logic.
Java and XSLT mapping are used when graphical mapping cannot help you and you have multilevel hierarchy structure data.
When the choice is between Java and XSLT, XSLT is simpler than java mapping and easier. But, it has its drawbacks. One among them being that you cannot use Java APIs and Classes in it. There might be cases in your mapping when you will have to perform something like a properties file look up or a DB lookup, such scenarios are not possible in XSLT and so, when you want to use some specific Java API's you will have to go for Java Mapping.
Java Mapping uses 2 types of parsers. DOM and SAX. DOM is easier to use with lots of classes to help you create nodes and elements, but, DOM is very processor intensive.
SAX parser is something that parses your XML one after the other, and so is not processor intensive. But, it is not exactly easy to develop either.
To know more about each of them please go thru the following links. And if you ask me your which is better, it depends basically on the scenario you implementing and the complexity involved. Anyways please go thru the following links:
Graphical mapping
http://help.sap.com/saphelp_nw04/helpdata/en/6d/aadd3e6ecb1f39e10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
/people/bhanu.thirumala/blog/2006/02/02/graphical-message-mapping-150-text-preview
http://www.sapgenie.com/netweaver/xi/mapping1.htm
/people/alessandro.guarneri/blog/2006/01/26/throwing-smart-exceptions-in-xi-graphical-mapping
XSLT mapping
http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
http://www.w3.org/TR/xslt20/
JAVA mapping
http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
DOM parser API
http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
ABAP mapping
/people/r.eijpe/blog
To know more about the value mapping tools for the SAP Exchange Infrastructure (XI), please go thru the following link:
http://www.applicon.dk/fileadmin/filer/XI_Tools/ValueMappingTool.pdf
To get an idea as to what value mapping is, please go thru the following links:
http://help.sap.com/saphelp_nw04/helpdata/en/13/ba20dd7beb14438bc7b04b5b6ca300/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/f2/dfae3d47afd652e10000000a114084/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/2a/9d2891cc976549a9ad9f81e9b8db25/content.htm
most of the links that I have provided also helps you get the step by step procedure of doing the same. And also involves the procedure to implement certain advanced features.
And please go through this link which clearly explains the 3 types of mappings.
/people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
regards
Prasad -
Java Mapping, XSLT Mapping, ABAP Mapping
Hi Experts,
Could any one explain what is the main features of the following Mapping. How to pick the mapping?
Java Mapping - When to use and what is the advantage.
ABAP Mapping - When to use and what is the advantage.
XSLT Mapping - When to use and what is the advantage.
Graphical Mapping - When to use and what is the advantage.
cheers,
SuneeThere are 4 types of mapping in XI
1. Graphical Mapping
2. XSLT Mapping
3. JAVA Mapping
4. ABAP Mapping
When to use Message mapping
1 When the logic for your mapping is simple and straight forward, you can use
Advantages of message mapping
1)Easy to use.
2) has GUI drag and drop.
3) used for simple mapping cases
4) it does not involve any complex logic
Disadvantages of message mapping
1)has limitation in terms of complex hierarchy
When to use Java mapping
1) Java mapping are used when graphical mapping cannot help you.
Advantages of Java Mapping
1)you can use Java APIs and Classes in it.
2) file look up or a DB lookup is possible
3) DOM is easier to use with lots of classes to help you create nodes and elements.
Disadvantages of Java mapping
1)SAX parser is not easy to develop
2)DOM parser is intensive
3) Java knowledge is required
4) bit complexer
XSLT Mapping - When to use
1)When the required output is other than XML like Text, Html or XHTML (html displayed as XML )
2)When default namespace coming from graphical mapping is not required or is to be changed as per requirements.
3)When data is to be filtered based on certain fields (considering File as source)
4)When data is to be sorted based on certain field (considering File as source)
5)When data is to be grouped based on certain field (considering File as source)
Advantages of using XSLT mapping
1)XSLT program itself defines its own target structure.
2)XSLT programs can be imported into SAP XI. Message mapping step can be avoided. One can directly go for interface mapping once message interfaces are created and mapping is imported.
3)XSLT provides use of number of standard XPath functions that can replaces graphical mapping involving user defined java functions easily.
4)File content conversion at receiver side can be avoided in case of text or html output.
5)Multiple occurrences of node within tree (source XML) can be handled easily.
6)XSLT can be used in combination with graphical mapping.
7)Multi-mapping is also possible using xslt.
8)XSLT can be used with ABAP and JAVA Extensions
Disadvantages of using XSLT mapping
1)Resultant XML payload can not be viewed in SXMB_MONI if not in XML format (for service packs < SP14).
2)Interface mapping testing does not show proper error description. So errors in XSLT programs are difficult to trace in XI but can be easily identified outside XI using browser.
3)XSLT mapping requires more memory than mapping classes generated in Java.
4)XSLT program become lengthier as source structure fields grows in numbers.
5)XSLT program sometimes become complex to meet desired functionality.
6)Some XSL functions are dependent on version of browser.
Advantages of Abap Mapping
1) A person comfortable with OOABAP can go for ABAP mapping instead.
Disadvantages of Abap Mapping
1) Abap knowledge is required
2) bit compexer
For further info on each of the mapping, refer to these links,
Graphical Mapping,
http://help.sap.com/saphelp_nw04/helpdata/en/6d/aadd3e6ecb1f39e10000000a114084/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
XSLT Mapping
http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
http://www.w3.org/TR/xslt20/
Java Mapping
http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
DOM parser API
http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
Check this blog on Mapping:
/people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
Also, check this thread for more info,
Different types of Mapping in XI -
Hi,
i am doing a XSLT mapping. i have a field which has fixed values(can be performed using graphical mapping). but the same i am not able to implement for XSLT. can anyone give me a idea about this
<removed by moderator>
Thanks
Deepika
Edited by: Mike Pokraka on Jul 24, 2008 12:57 PMStep u2013 By u2013 Step Simple Approach for XSLT Mapping
Step By Step Simple Approach for XSLT Mapping
generic xslt mapping part 1
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/01a57f0b-0501-0010-3ca9-d2ea3bb983c1
generic xslt mapping part2
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9692eb84-0601-0010-5ca0-923b4fb8674a
xslt recursive templates
XSLT: Recursive Templates
regards
kummari -
XSLT Mapping :-- End to End Scenario
Can any one provide XSLT Mapping End to End scenario with screen shots?
HI
XSLT Mapping
XSLT stands for EXtensible Stylesheet Language Transformations. It is an XML based language for transforming XML documents into any other formats suitable for browser to display, on the basis of set of well-defined rules.
Using XSLT mapping in a ccBPM scenario
File to Multiple IDocs (XSLT Mapping)
Steps required for developing XSLT Mapping
u2022 Create a source data type and a target data type
u2022 Create Message types for the source and target data types.
u2022 Create Message Interfaces includes Inbound Message interface and Outbound Message interface.
u2022 XSLT Mapping does not require creation of Message mapping, so donu2019t create any Message mapping.
u2022 Create an .XSL file which converts source data type into target data type.
u2022 Zip that .xsl file and import it into Integration Repository under Imported Archives.
u2022 In Interface Mapping choose mapping program as XSL and specify this zip program. (Through search help you will get XSL Mapping programs that you imported under Imported Archives, select your corresponding XSL Program)
u2022 Test this mapping program by navigating to Test tab.
By having look at above steps you can easily find out that this mapping is no where different from other mapping programs, here the challenging lies in creating an XSLT file. If you spend couple of minutes in studying XPATH tutorial you would be in ideal position to create an XSL Transformation (.xsl extension).
If you still find difficulties in generating XSL Transformation, then you can make use of a tool u201CAltova MapForceu201D which will create XSL file for you.
Steps for creating XSL file using this tool:
1. Open the Alto MapForce, import the source .xml and .xsd file in it
2. Similarly import the target .xml and .xsd in MapForce.
3. These two data files should match with source and target data types in Integration Repository.
4. Complete the graphical mapping using extensive list of XSLT functions available there.
5. Save the mapping file.
6. Click the XSLT tab. You will have the entire xslt logic there.
7. Copy that content and save it as .xsl file.
8. Zip above .xsl file and import the same into IR under Imported Archives.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/01a57f0b-0501-0010-3ca9-d2ea3bb983c1
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/9692eb84-0601-0010-5ca0-923b4fb8674a
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/006aa890-0201-0010-1eb1-afc5cbae3f15
xpath functions in xslt mapping
https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=xslt+mapping&adv=false&sortby=cm_rnd_rankvalue#
complete mapping guide:
http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
XSLT MAPPING:
Generic XSLT Mapping for SAP XI,Part I
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/01a57f0b-0501-0010-3ca9-d2ea3bb983c1
Generic XSLT Mapping for SAP XI,Part II
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9692eb84-0601-0010-5ca0-923b4fb8674a
XSLT: Recursive Templates
XSLT: Recursive Templates
Easy RFC lookup from XSLT mappings using a Java helper class
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/05a3d62e-0a01-0010-14bc-adc8efd4ee14
Step u2013 By u2013 Step Simple Approach for XSLT Mapping
Step By Step Simple Approach for XSLT Mapping
http://www.devguru.com/Technologies/xslt/quickref/xslt_element_applytemplates.html
cheers
Edited by: vemuganti naga phalguna on Jul 2, 2008 8:59 AM
Edited by: vemuganti naga phalguna on Jul 2, 2008 9:07 AM
Maybe you are looking for
-
BAPI_PO_CREATE1 is not creating the shipping tab on an STO
Hello All, I searched for this on the forums and came up blank. Maybe its how I am asking. Anyway I am using BAPI_PO_CREATE1 to create an STO. Problem is that the customer needs the shipping tab at the item level. I tried adding poshipping and poship
-
Subfolders created in Bridge are missing in the OSX finder
To organize large folders of photos via Adobe Bridge, I created subfolders. In the OS X finder, these subfolders do not show up. I am, of course, worried about files going missing because I cannot burn a cd for backup because OS X doesn't see any of
-
IE7 and BO XI R2 version 11.5.0.0
I wonder if BO XI R2 version 11.5.0.0 is compatible with IE7. Best Regards
-
--Ext3 using a lot more space than XFS?
Hi, although this question is related to my fileserver I put it in this forum as it's not related to networking in any way, I hope it fits. So, I have a fileserver mostly acting as NAS. The main volume consits of 250GB+500GB as one LVM group. I have
-
Wireless Bridge error with AIR-BR1310G-E-K9,cannot associate: No response
Hi Guys, I have to do a wireless bridge with 2 AIR-BR1310G-E-K9. I configure 1 AP root bridge and 1 AP non-root bridge, with the same SSID. But on the AP non-root bridge, the interface dot11 radio don't change it state to up and give this error: %DOT