on 05-16-2005 1:24 PM
We are implementing a project on XI.
We need to freeze on one mapping.
I feel ABAP Mapping provides the following advantages:
1.SXI_MAPPING_TEST is a very good transaction for debugging and testing mapping environment of XI.Iam not sure wether java mapping can be tested after deploying it on XI.
2.ABAP Mapping is well integrated with the XI and also version control becomes very easy as it is provided by the SAP transport system.
3.ABAP also provides user rich/simple API's as java.
4.Support of XI in ABAP would make sustanenace easy as it is going to be a more SAP product and ABAPers are more available in ERP background.
Java punters,Please provide inputs.
Hi,
I guess java has good IDE tools.But when you need to debug the java mapping program after it is deployed on XI server,I dont think XI provides any IDE for that.But i can trouble shoot the abap mapping by keeping a break point in the ABAP OBJECT se24 EDITOR.
And also version control is inbulit for the abap mapping programs by the inbuilt transport system.It would be relatively very easy when I want to retrieve versions.
I modify ABAP MAPPING in se24 editor and activate,it will immediately reflect in the XI.But if I try out java mapping,each time I change a line of code I have to compile it and deploy the jar everytime on XI.
Iam feeling ABAP is having more advantages than java in XI perspective.Java punters,Please counter.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello,
I think Java is better than ABAP for mapping, and if you can XSLT is the best.
You can test your Java mapping in your JDE (Eclipse) and it is more friendly than the ABAP debugger.
Java provide a very large API, I am not sure ABAP API too.
About transport system: Java is transporting with your Repository development, so you don't need to do anything more.
I think you must use ABAP mapping only when you can't do XSLT or JAVA mapping. For example when you want to use FM.
Regards,
Chris
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Yes, I agree with Chris.
Java has better IDE tools than ABAP, and has a richer API library.
If you have a java version management system in place, such as sourcesafe, cvs, or SAP JDI, that won't be a problem.
Another issue with ABAP mapping is the performance. Natively, XI uses java mapping since that part is built on Java stack. When ABAP mapping is used, it has to make a RFC call from Java to ABAP stack which consume some resources and time.
Regards,
Hart
Hart,
can you please elaborate on the performance implications.
i would assume that if you are using ABAP mapping, the pipeline step for mapping should not even make a call to the Java stack for executing the mapping.
please correct me if i am wrong. I would also appreciate an inside view of the order of the calls between Stacks involved during mapping.
I think Hart's comment regarding mapping is mistaken - my understanding is that the mapping is done by the Central pipeline, which runs in the ABAP stack. All of the mapping functions (if any are necessary) are perfromed by groups of ABAP classes via the Pipeline Elements "REQUEST MESSAGE MAPPING" (transaction SXMB_ADM lists the elements and associated services). The Adapter Framework runs in the J2EE stack, but only translates messages passed to the adapter from whatever format the sender uses to internal XI-XML format, which is then mapped (as required) in the Pipeline.
Therefore mapping done within XI does not cause undue overhead.
However, it is also possible to do mapping in the adapter itself as part of the translation process, although that isn't really the true purpose of the adapter.
Regards,
D.
Hi!
> I think Hart's comment regarding mapping is mistaken
> - my understanding is that the mapping is done by the
> Central pipeline, which runs in the ABAP stack.
No, Hart is right, mappings are executed in the Java stack of the Web Application Server. Thus an ABAP mapping will require an additional RFC call to the ABAP stack.
Regards, Tanja
Hi,
all of the step in the message flow after a message enter
the IS will be done by the abbap stack e.g. Receiver
determination, interface determination, ... The only one
step that is executed in J2EE-Stack is the mapping.
In the pipline the system jump from the abap stack to
Java stack to execute the mapping if the mapping is done
in Java (message mapping, java mapping, xslt,...).
But if the the mapping is done by abap the the runtime
has not to jump to the java stack to execute the mapping.
Because there is no java code to execute. To clarif: if
you have only abap-mapping the the compete process step
do not include the jump to the j2ee-stack of XI. So in
this case the abap mapping is more performant cause the
runtime stay in the abap stack through the complete
message processing.
But if you have mix mapping e.g. first step abap and
second step java then the j2ee-stack will be used as
well.
regards,
Ly-Na Phu
User | Count |
---|---|
84 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.