Abapproxy
hi all ,
i am doing abapproxy to file scenario, when i execute the test interface in abap engine of xi server.
in SXMB_MONI it is showing "scheduled" with green flag. but it is not showing in the output directory .
wht could be the reason
Hi !!!
refer the below links
/people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy
How to activate the proxy- Refer this- /people/vijaya.kumari2/blog/2006/01/26/how-do-you-activate-abap-proxies
ttps://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/ac6de690-0201-0010-54ac-8923089dcc97
refer this thread also
ABAP proxy to File scenario
Thanks!
Similar Messages
-
Hi All,
We have a scenario like Request is coming from a Webservice in Asynchronous Mode and PI has to send the request to ABAP Proxy and from Proxy response will again send as Asynchronously to other webservice.
WebService1(Request)-->PI>(Request)ABAPProxy(Response)->PI-->Webservice2(Response)
We thought of using BPM to convert asyn message to Synchronous but my customer is not interested for BPM.So can anyone suggest this scenario without using BPM?
Thanks,
Kalyan.Hi Prateek,
Thanks for ur suggestions,
We finally choosen as
1st scenario - Webservice - XI - Abap server proxy.
2nd scenario - Abap client proxy - XI - Webservice
In 1st scenario at Server Proxy we are capturing request message and we call BAPI and got the response message .
and then we created an object for Client proxy and we passed the response message to the client structure.when i debug the code at server proxy the response message is coming to PI but its unable to find the reseiver Service and receievr Interface as i already cross checked that my ID is fine.
Can you give any suggestions?
Thanks,
Kalyan. -
Receiver ABAPProxy-Addressing Type parameter
Hi,
In receiver ABAPProxy, we have Addressing Type parameter, which has two options 1. URL Address and 2. HTTP destination.
What is difference between two and when to choose?
Thanks,
Pragathi.we have 1. SDN and 2. help.sap.com
What is difference between two and when to choose?
http://help.sap.com/saphelp_nwpi71/helpdata/EN/85/78af1bf407434796aaf8dbd6d4e7b7/frameset.htm -
File to Idoc OR File to AbapProxy
Hello,
Let me expose my problem.
In fact, I need to integrate new Goods Movements sent by a non-Sap system to ECC system.
To do that, the non-sap system sends a file.
Then, I need to generate from this file an Idoc (MBGMCR), fill this Idoc with some extra data (from Ecc tables) and then to integrate it into ECC.
The question here is to find the best solution (according to performance and feasibility) to do that using PI (7.0).
We are hesitating between two scenarios:
1- File to Abap Proxy
We get the data sent by an abap proxy, and then we complete it with the necessary extra data from ECC tables in order to create complete the Idoc segments.
In this case, I canu2019t see the need of SAP PI because we could have just basically read the file directly with ECC.
Even, using PI will be a waste of performance/time (due to mappingu2026)
2- File to IDOC
This alternative looks more interesting (at least in the PI way).
But this scenario may lead to the following problem: there are a lot of fields not filled by the data coming from the non-sap system (even whole segments).
For example, the file contains Orders headers and I need to generate Goods Movements for the materials contained in the orders. So I need to access Orders posts, to retrieve the materials data.
Is there a way to retrieve simple information in PI using ECC data?
Any other suggestion/comment is welcome.
(Any other scenario is also welcome)
Thanks you in advance.
Saber L.
SAP PI consultant.
Edited by: LMS LMS on Nov 7, 2008 10:24 AM
Edited by: LMS LMS on Nov 7, 2008 10:25 AM
Edited by: LMS LMS on Nov 7, 2008 10:25 AMABAP proxy would improve performance in terms of providing adapterless communication.
In this case, I canu2019t see the need of SAP PI because we could have just basically read the file directly with ECC.
Making a direct connection would increase point to point connectivity across the organization whose reduction is one of the reason why XI is used.
If ur communication is async and u have the idoc structure ready, then u may proceed with Idocs.
But this scenario may lead to the following problem: there are a lot of fields not filled by the data coming from the non-sap system (even whole segments).
If you want to prevent the node from getting generated, simply disable it in mapping.
I hope u have seen this
Choose the Right Adapter to integrate with SAP systems
Regards,
Prateek -
Is in PI7.1 possible asynchronous communication between SOAP and ABAPProxy?
Hi,
when method execute_asynchronous has disapeared since XI/PI 7.1, is
there still way how to use ABAP proxy in asynchronous way?
We need to build asynchronous connection SOAP->PI->ABAP_Proxy.
In PI, both interfaces are defined as asynchronous (outbound for SOAP and
inbound for ABAP Proxy).
Despite of this fact, when message is sent, it is processed
synchronous way.
I have set breakpoint in my implementation of method for ABAP Proxy
message processing. When message is sent and breakpoint is reached,
whole connection stays open (between SOAP and PI and between PI and
ABAP Proxy) and waits for processing method (the breakpointed one) to
return. Only when processing method returns, is connection finelly
closed.
If i understand it correctly, this is synchronous behavior. In
asynchronous behavior, as i understand it, should be connection
between PI and ABAP Proxy of application server closed immediately
after message has been delivered. This mean before my processing
method is even called.
The same could be said about SOAP and PI communication. Connection
should be closed immediately after PI has received message. From
definition of asynchronous communication of PI is obvious, that PI
should receive message correctly and close connection to sender system
even when receiver is unreachable. It should deliver message later
when, receiver system is back on line. So why it keeps connection to
sender system open while it waits for receiver?
Why is this happening, when both interfaces are defined as
asynchronous? Could be the reason for this, if APPLICATION
ACKNOWLEDGEMENT is set on by default? If so, how can i change it
to SYSTEM ACKNOWLEDGEMENT, or disable it at all?
Or is this kind of asynchronous communication even possible since
XI/PI 7.1 ?
Processing of message we are sending can take some time, so we dont
want connection pending open while waiting for finish of
processing. Thats the reason why we have chose asynchronous model to
use.Quote from How to Use the J2EE SOAP Adapter:
"If you select Best Effort, the Web service client will receive a response
message in the SOAP body. Otherwise, the Web service client will not receive a
response message if no error occurs."
"if no error occurs" - that is the problem. In either case he still
waits if some error occure or not. I dont want it. Once PI has
received message, I want the connection with sender to be closed. If
there will be error in communication between PI and reciever, I want
to see it only in PI log. That mean no notification to sender to be
send about that error.
Is that possible? -
How to create abapProxy without ESR connection
I use local object in sproxy and i want to copy a local object service..but i cannot copy it because when i do right click,in context menu copy option doesnt exist..
is it possible to create abap proxy without Integration Builder?and how can i do it?
ThanksHi Tuncer,
From what i understood in your query below are few explanations.
ABAP Proxy can be generated using:
1. Using Object Navigator SE80
a) Call the Object Navigator (transaction SE80) in the system where you want to generate the server or client proxy. Select a package. From the context menu, choose Create ® Enterprise Services / Web Services ® Proxy Object.
b) In the dialog box that appears, choose the WSDL Source (URL/HTTP destination, local file, UDDI, or XI Repository).The Object Navigator displays proxy objects created in the system in the navigation tree under Enterprise Services ® Web Service Library (client proxies, server proxies, and proxy Dictionary-objects).
2. Using transaction SPROXY
Hope this was helpful.
Regards,
Divya -
How to create abapProxy in nw 7.01 not 7.1 from integration repository
i use nw 7.01 , it's sproxy inteface is different old and new ones like 7.1 so i couldnt create abap proxy in sproxy.I created an message interface in integration repository but i couldnt find any object releated to this in sproxy..
I found some documentation about 7.1 , it mentions that you must create a service interface in IR but in my version it doesnt exist.
so how to create or copy existing proxy class?
Thanks alotI guess it should be similar to PI 7.0 environment wherein you have to create message interface in IR. Then use SPROXY transaction at R3 (not XI). From there you may select the interface and create proxy. For this make sure that abap proxy is activated at your R3 system.
Regards,
Prateek -
Data is not getting posted in ABAP Proxy.
Hi,
I am working on File to ABAPProxy scenario. The data is not going to proxy.
In PI sxmb_moni is status is successfull and in the R3 sxmb_moni the status is successfull. But the data is not getting posted in the tables(ABAPProxy). I had checked the inbound and oubound queues. And with the same input data, abapers cheked their code in Abapproxy, then the table is getting updated. When we trigger from PI, the tables are not getting updated.Please help me.
Thanks,
Pragathi.Hi,
The problem may be
Case 1: Cache is not getting refreshed(Check SXI_CACHE)
Case 2: The Queue Is blocked (Check SMQ1 & SMQ2)
Regards,
Sainath -
Hi all,
I have a requirement like ,i have one xml file ,now i want to integrate into sap.so plz help which scenario i have to follow.
thanks & regards,
subba reddyHi! ,
You can go for different ways depending upon the source data...
Suppose if it is SO,PO,GR (Sales Order from CRM System) and ( PO and GR from R3 System) means you neeed to prefer IDOC or also you can go for PROXY scenario I mean you can get the SO,PO,GR data by invoking the ABAPproxy.
Suppose if you want to Integrate means sending File to BW system means you can go simply
File To RFC Scenario.
Suppose if you wants to send data via Web Methods or and other Web Applicationto R3 means you can go for
SOAP-->RFC Sync scenario
Suppose if you are generate FICO Details through PAYTEXT IDOC you can go for
File to IDOC
In SAP Technical there are so many scenarios with screenshtos so pelase check the above scenarios there.k
Regards::
Amar Srinivas Eli -
SOAP-XI-ABAP Proxy scenario suddenly not working... with some error.
Hi,
My interface is WS-XI-ABAPproxy.
It was working fine. And I was able to test end-to-end using XML spy.
After 5 days when I tested it again it is not working.
I didnt make any changes.
Today when I run, it is giving error in XI box.
Please find trace from XI box.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Technical Routing
-->
- <SAP:Trace xmlns:SAP="http://sap.com/xi/XI/Message/30">
<Trace level="1" type="T">Party normalization: sender</Trace>
<Trace level="1" type="T">Sender scheme external = XIParty</Trace>
<Trace level="1" type="T">Sender agency external = http://sap.com/xi/XI</Trace>
<Trace level="1" type="T">Sender party external =</Trace>
<Trace level="1" type="T">Sender party normalized =</Trace>
<Trace level="1" type="B" name="CL_XMS_HTTP_HANDLER-HANDLE_REQUEST" />
- <!-- ************************************
-->
<Trace level="1" type="T">XMB was called with URL /sap/xi/engine?type=entry</Trace>
<Trace level="2" type="T">Request Line = POST /sap/xi/engine?type=entry HTTP/1.1</Trace>
<Trace level="2" type="T">Host = sapxidev.sw.schwans.net:8080</Trace>
<Trace level="2" type="T">Server protocol = HTTP/1.1</Trace>
<Trace level="2" type="T">Remote address = 10.1.5.143</Trace>
<Trace level="1" type="T">COMMIT is done by XMB !</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-ENTER_XMS" />
- <!-- ************************************
-->
<Trace level="1" type="B" name="CL_XMS_MAIN-SET_START_PIPELINE" />
- <!-- ************************************
-->
<Trace level="3" type="T">XMB was called with external pipeline PID = ENTRY</Trace>
<Trace level="3" type="T">Getting type of XMB...</Trace>
<Trace level="1" type="B" name="SXMBCONF-SXMB_GET_XMB_USE" />
<Trace level="2" type="T">XMB kind = CENTRAL</Trace>
<Trace level="3" type="T">Start pipeline found</Trace>
<Trace level="2" type="T">Switch to external start pipeline PID = CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_TROUBLESHOOT-ENTER_PLSRV">
<Trace level="3" type="T">No triggers found. OK.</Trace>
</Trace>
<Trace level="1" type="T">****************************************************</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">XMB entry processing</Trace>
<Trace level="3" type="T">system-ID = XI1</Trace>
<Trace level="3" type="T">client = 100</Trace>
<Trace level="3" type="T">language = E</Trace>
<Trace level="3" type="T">user = XIAFUSR_XI1</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">* *</Trace>
<Trace level="1" type="T">****************************************************</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_UC_EXECUTE" />
- <!-- ************************************
-->
<Trace level="1" type="T">Message-GUID = ED93DCC0B4D011DCCE59001438BE3377</Trace>
<Trace level="1" type="T">PLNAME = CENTRAL</Trace>
<Trace level="1" type="T">QOS = EO</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_ASYNC" />
- <!-- ************************************
-->
<Trace level="3" type="T">QOS = EO</Trace>
<Trace level="3" type="T">Message-GUID = ED93DCC0B4D011DCCE59001438BE3377</Trace>
<Trace level="1" type="T">Get definition of external pipeline = CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
<Trace level="3" type="T">External PLID = CENTRAL</Trace>
<Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
</Trace>
<Trace level="1" type="T">Get definition of internal pipeline = SAP_CENTRAL</Trace>
<Trace level="3" type="T">Generate prefixed queue name</Trace>
<Trace level="1" type="T">Queue name : XBTI0008</Trace>
<Trace level="1" type="T">Generated prefixed queue name = XBTI0008</Trace>
<Trace level="1" type="T">Schedule message in qRFC environment</Trace>
<Trace level="3" type="T">Setup qRFC Scheduler</Trace>
<Trace level="1" type="T">Setup qRFC Scheduler OK!</Trace>
<Trace level="3" type="T">Call qRFC .... MsgGuid = ED93DCC0B4D011DCCE59001438BE3377</Trace>
<Trace level="3" type="T">Call qRFC .... Version = 000</Trace>
<Trace level="3" type="T">Call qRFC .... Pipeline = CENTRAL</Trace>
<Trace level="3" type="T">OK.</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Going to persist message</Trace>
<Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
<Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
<Trace level="1" type="T">- Exit CALL_PIPELINE_ASYNC</Trace>
<Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="3" type="T">Version number = 000</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="3" type="T">Persisting message Status = 001</Trace>
<Trace level="3" type="T">Message version 000</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="interface activity determination">
<Trace level="1" type="T">Version 000</Trace>
<Trace level="1" type="T">Message status 000</Trace>
<Trace level="1" type="T">Interface action INIT</Trace>
<Trace level="1" type="T">(must be INIT for a new determination)</Trace>
<Trace level="1" type="T">start CHECK_INTERFACE</Trace>
<Trace level="1" type="T">--start sender interface action determination</Trace>
<Trace level="1" type="T">select interface SqlSender_MI*</Trace>
<Trace level="1" type="T">select interface namespace http://tsfco:I_CRM_SQL_COM_SC:XX:BpFromSqlToCrm</Trace>
<Trace level="1" type="T">no interface found</Trace>
<Trace level="1" type="T">end CHECK_INTERFACE</Trace>
<Trace level="1" type="T">Set interface action INIT into *MAST*</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE">
<Trace level="3" type="T">Trace object available again now. OK.</Trace>
<Trace level="3" type="T">Message was read from persist layer. OK.</Trace>
<Trace level="3" type="T">Message properties in XMB object were setup. OK.</Trace>
<Trace level="3" type="ToDo">Make sure we catch exceptions in persist read</Trace>
<Trace level="3" type="ToDo">Tracing obj. not avail. before return of CL_XMS_MAIN-PERSIST_READ_MESSAGE</Trace>
</Trace>
<Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
<Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
- <!-- ************************************
-->
<Trace level="3" type="T">message version successfully read from persist version= 000</Trace>
<Trace level="2" type="T">Increment log sequence to 001</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
<Trace level="3" type="T">system-ID = XI1</Trace>
<Trace level="3" type="T">client = 100</Trace>
<Trace level="3" type="T">language = E</Trace>
<Trace level="3" type="T">user = XIAFUSR_XI1</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
<Trace level="3" type="T">External PLID = CENTRAL</Trace>
<Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
</Trace>
<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline attributes</Trace>
<Trace level="3" type="T">PID = SAP_CENTRAL</Trace>
<Trace level="3" type="T">ENABLE = 1</Trace>
<Trace level="3" type="T">TRACELEVEL = 0</Trace>
<Trace level="3" type="T">EXEMODE = A</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline elements</Trace>
<Trace level="3" type="T">ELEMPOS = 0001</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0002</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0003</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0004</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0007</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0008</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">PLSRVTYPE = =SWITCH=</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0009</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_RESPONSE</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T" />
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET Begin of pipeline processing PLSRVID = CENTRAL</Trace>
- <Trace level="1" type="B" name="PLSRV_RECEIVER_DETERMINATION">
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET Start of pipeline service processing PLSRVID= PLSRV_RECEIVER_DETERMINATION</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_RD_PLSRV</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_RD_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">R E C E I V E R - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
<Trace level="2" type="T">Start without given receiver</Trace>
<Trace level="2" type="T">Classic Receiver Determination via Rules.</Trace>
<Trace level="2" type="T">Check conditions for rule line no. 1</Trace>
<Trace level="2" type="T">...valid Receiver w/o Condition: - Sys_CR1_120</Trace>
<Trace level="2" type="T">No Receiver found behaviour: 0</Trace>
<Trace level="2" type="T">Number of Receivers:1</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET End of pipeline service processing PLSRVID= PLSRV_RECEIVER_DETERMINATION</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 001</Trace>
<Trace level="3" type="T">Message version 001</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="interface activity determination">
<Trace level="1" type="T">Version 001</Trace>
<Trace level="1" type="T">Message status 001</Trace>
<Trace level="1" type="T">Interface action INIT</Trace>
<Trace level="1" type="T">(must be INIT for a new determination)</Trace>
<Trace level="1" type="T">start CHECK_INTERFACE</Trace>
<Trace level="1" type="T">--start sender interface action determination</Trace>
<Trace level="1" type="T">select interface SqlSender_MI*</Trace>
<Trace level="1" type="T">select interface namespace http://tsfco:I_CRM_SQL_COM_SC:XX:BpFromSqlToCrm</Trace>
<Trace level="1" type="T">no interface found</Trace>
<Trace level="1" type="T">--start receiver interface action determination</Trace>
<Trace level="1" type="T">Loop 0000000001</Trace>
<Trace level="1" type="T">select interface *</Trace>
<Trace level="1" type="T">select interface namespace</Trace>
<Trace level="1" type="T">no interface found</Trace>
<Trace level="1" type="T">--no sender or receiver interface definition found</Trace>
<Trace level="1" type="T">Hence set action to DEL</Trace>
<Trace level="1" type="T">end CHECK_INTERFACE</Trace>
<Trace level="1" type="T">Set interface action DEL into *MAST*</Trace>
</Trace>
</Trace>
- <Trace level="1" type="B" name="PLSRV_INTERFACE_DETERMINATION">
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET Start of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_ID_PLSRV</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_ID_PLSRV-ENTER_PLSRV">
<Trace level="1" type="T">I N T E R F A C E - D E T E R M I N A T I O N</Trace>
<Trace level="1" type="T">Cache Content is up to date</Trace>
<Trace level="2" type="T">Check conditions for (Inb: Party Srvc If) Sys_CR1_120 CrmReceiver_MI</Trace>
<Trace level="2" type="T">...valid InbIf without Condition: CrmReceiver_MI</Trace>
<Trace level="2" type="T">Number of receiving Interfaces:1</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET End of pipeline service processing PLSRVID= PLSRV_INTERFACE_DETERMINATION</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 002</Trace>
<Trace level="3" type="T">Message version 002</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="interface activity determination">
<Trace level="1" type="T">Version 002</Trace>
<Trace level="1" type="T">Message status 001</Trace>
<Trace level="1" type="T">Interface action DEL</Trace>
<Trace level="1" type="T">(must be INIT for a new determination)</Trace>
<Trace level="1" type="T">Set interface action DEL into *MAST*</Trace>
</Trace>
</Trace>
<Trace level="1" type="B" name="PLSRV_RECEIVER_MESSAGE_SPLIT" />
- <!-- ************************************
-->
<Trace level="1" type="Timestamp">2007-12-27T23:10:34Z CET Start of pipeline service processing PLSRVID= PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_RECEIVER_SPLIT</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
<Trace level="1" type="B" name="CL_XMS_PLSRV_RECEIVER_SPLIT-ENTER_PLSRV" />
- <!-- ************************************
-->
<Trace level="3" type="T">Case handling for different plsrv_ids PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="2" type="T">got property produced by receiver determination</Trace>
<Trace level="1" type="T">number of receivers: 1</Trace>
<Trace level="1" type="T">Single-receiver split case</Trace>
<Trace level="1" type="T">Post-split internal queue name = XBTOI___0000</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Persisting single message for post-split handling</Trace>
<Trace level="1" type="T" />
<Trace level="1" type="T">Going to persist message + call qRFC now...</Trace>
<Trace level="1" type="T">NOTE: The following trace entries are always lacking</Trace>
<Trace level="1" type="T">- Exit WRITE_MESSAGE_TO_PERSIST</Trace>
<Trace level="1" type="T">Async barrier reached. Bye-bye !</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="3" type="T">Persisting message Status = 012</Trace>
<Trace level="3" type="T">Message version 003</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="interface activity determination">
<Trace level="1" type="T">Version 003</Trace>
<Trace level="1" type="T">Message status 001</Trace>
<Trace level="1" type="T">Interface action DEL</Trace>
<Trace level="1" type="T">(must be INIT for a new determination)</Trace>
<Trace level="1" type="T">Set interface action DEL into *MAST*</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-PERSIST_READ_MESSAGE">
<Trace level="3" type="T">Trace object available again now. OK.</Trace>
<Trace level="3" type="T">Message was read from persist layer. OK.</Trace>
<Trace level="3" type="T">Message properties in XMB object were setup. OK.</Trace>
<Trace level="3" type="ToDo">Make sure we catch exceptions in persist read</Trace>
<Trace level="3" type="ToDo">Tracing obj. not avail. before return of CL_XMS_MAIN-PERSIST_READ_MESSAGE</Trace>
</Trace>
<Trace level="1" type="T">Note: the following trace entry is written delayed (after read from persist)</Trace>
<Trace level="1" type="B" name="SXMS_ASYNC_EXEC" />
- <!-- ************************************
-->
<Trace level="3" type="T">message version successfully read from persist version= 004</Trace>
<Trace level="2" type="T">Increment log sequence to 005</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="T">Starting async processing with pipeline CENTRAL</Trace>
<Trace level="3" type="T">system-ID = XI1</Trace>
<Trace level="3" type="T">client = 100</Trace>
<Trace level="3" type="T">language = E</Trace>
<Trace level="3" type="T">user = XIAFUSR_XI1</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:25:53Z CET</Trace>
<Trace level="1" type="T">----
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PIPELINE_SYNC" />
- <!-- ************************************
-->
<Trace level="1" type="T">Get definition of external pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-LOOKUP_INTERNAL_PL_ID">
<Trace level="3" type="T">External PLID = CENTRAL</Trace>
<Trace level="3" type="T">Internal PLID = SAP_CENTRAL</Trace>
</Trace>
<Trace level="1" type="T">Corresponding internal pipeline SAP_CENTRAL</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline attributes</Trace>
<Trace level="3" type="T">PID = SAP_CENTRAL</Trace>
<Trace level="3" type="T">ENABLE = 1</Trace>
<Trace level="3" type="T">TRACELEVEL = 0</Trace>
<Trace level="3" type="T">EXEMODE = A</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline elements</Trace>
<Trace level="3" type="T">ELEMPOS = 0001</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0002</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_INTERFACE_DETERMINATION</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0003</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_RECEIVER_MESSAGE_SPLIT</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0004</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0007</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0008</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_CALL_ADAPTER</Trace>
<Trace level="3" type="T">PLSRVTYPE = =SWITCH=</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">ELEMPOS = 0009</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_RESPONSE</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">FL_DUMMY =</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T" />
<Trace level="1" type="Timestamp">2007-12-27T23:25:53Z CET Begin of pipeline processing PLSRVID = CENTRAL</Trace>
<Trace level="1" type="T">Start with pipeline element PLEL= 5EC3C53B4BB7B62DE10000000A1148F5</Trace>
- <Trace level="1" type="B" name="PLSRV_MAPPING_REQUEST">
<Trace level="1" type="Timestamp">2007-12-27T23:25:53Z CET Start of pipeline service processing PLSRVID= PLSRV_MAPPING_REQUEST</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV">
<Trace level="3" type="T">Calling pipeline service: PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_MAPPING_REQUEST</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_MAPPING_XMS_PLSRV3</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
- <Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL">
- <Trace level="1" type="B" name="CL_MAPPING_XMS_PLSRV3-ENTER_PLSRV">
<Trace level="2" type="T">......attachment XI_Context not found</Trace>
<Trace level="3" type="T">Mapping is already determined in the interface determination</Trace>
<Trace level="3" type="T">Object ID of Interface Mapping 4C27809CF7983547B356B100F7AED5D2</Trace>
<Trace level="3" type="T">Version ID of Interface Mapping 038CECC0946411DCBCA5E2130A0104F7</Trace>
<Trace level="1" type="T">Interface Mapping http://tsfco:I_CRM_SQL_COM_SC:XX:BpFromSqlToCrm SqlToCrmFsCB_IM</Trace>
<Trace level="3" type="T">Mapping Steps 1 JAVA com/sap/xi/tf/_SqlToCrmFsCB_MM_</Trace>
<Trace level="3" type="T">Dynamic configuration is empty</Trace>
<Trace level="2" type="T">Mode 0</Trace>
<Trace level="3" type="T">Creating Java mapping com/sap/xi/tf/_SqlToCrmFsCB_MM_.</Trace>
<Trace level="2" type="T">Call method execute of the application Java mapping com.sap.xi.tf._SqlToCrmFsCB_MM_</Trace>
<Trace level="2" type="T">Java mapping com/sap/xi/tf/_SqlToCrmFsCB_MM_ completed. (executeStep() of com.sap.xi.tf._SqlToCrmFsCB_MM_</Trace>
<Trace level="3" type="T">Dynamic configuration is empty</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:25:53Z CET End of pipeline service processing PLSRVID= PLSRV_MAPPING_REQUEST</Trace>
</Trace>
- <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST">
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 005</Trace>
<Trace level="3" type="T">Message version 005</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="interface activity determination">
<Trace level="1" type="T">Version 005</Trace>
<Trace level="1" type="T">Message status 009</Trace>
<Trace level="1" type="T">Interface action DEL</Trace>
<Trace level="1" type="T">(must be INIT for a new determination)</Trace>
<Trace level="1" type="T">Set interface action DEL into *MAST*</Trace>
</Trace>
</Trace>
- <Trace level="1" type="B" name="PLSRV_OUTBOUND_BINDING">
<Trace level="1" type="Timestamp">2007-12-27T23:25:53Z CET Start of pipeline service processing PLSRVID= PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV" />
- <!-- ************************************
-->
<Trace level="3" type="T">Calling pipeline service: PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">Reading Pipeline-Service specification...</Trace>
<Trace level="3" type="T" />
<Trace level="3" type="T">Pipeline service specification (table SXMSPLSRV)</Trace>
<Trace level="3" type="T">PLSRVID = PLSRV_OUTBOUND_BINDING</Trace>
<Trace level="3" type="T">PLSRVTYPE =</Trace>
<Trace level="3" type="T">ADRESSMOD = LOCAL</Trace>
<Trace level="3" type="T">P_CLASS = CL_XMS_PLSRV_OUTBINDING</Trace>
<Trace level="3" type="T">P_IFNAME = IF_XMS_PLSRV</Trace>
<Trace level="3" type="T">P_METHOD = ENTER_PLSRV</Trace>
<Trace level="3" type="T">FL_LOG =</Trace>
<Trace level="3" type="T">FL_DUMMY = 0</Trace>
<Trace level="3" type="T" />
<Trace level="1" type="B" name="CL_XMS_MAIN-CALL_PLSRV_LOCAL" />
- <!-- ************************************
-->
- <Trace level="1" type="B" name="CL_XMS_PLSRV_OUTBINDING-ENTER_PLSRV">
<Trace level="2" type="T">O U T B O U N D - B I N D I N G</Trace>
<Trace level="2" type="T">Cache Content is up to date</Trace>
<Trace level="2" type="T">determine OUTBOUND BINDING for:</Trace>
<Trace level="2" type="T">-Mrs2sqlq02_BSer</Trace>
<Trace level="2" type="T">-Sys_CR1_120</Trace>
<Trace level="2" type="T">http://tsfco:I_CRM_SQL_COM_SC:XX:BpFromSqlToCrm.CrmReceiver_MI</Trace>
<Trace level="2" type="T">Channel found: - Sys_CR1_120 - Rcv_Sys_CR1_XI</Trace>
<Trace level="2" type="T">no header mapping defined</Trace>
</Trace>
</Trace>
</Trace>
<Trace level="1" type="Timestamp">2007-12-27T23:25:53Z CET End of pipeline service processing PLSRVID= PLSRV_OUTBOUND_BINDING</Trace>
</Trace>
<Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_LOG_TO_PERSIST" />
- <!-- ************************************
-->
<Trace level="3" type="T">Persisting message after plsrv call</Trace>
<Trace level="3" type="T">Message-Version = 006</Trace>
<Trace level="3" type="T">Message version 006</Trace>
<Trace level="3" type="T">Pipeline CENTRAL</Trace>
- <Trace level="1" type="B" name="interface activity determination">
<Trace level="1" type="T">Version 006</Trace>
<Trace level="1" type="T">Message status 009</Trace>
<Trace level="1" type="T">Interface action DEL</Trace>
<Trace level="1" type="T">(must be INIT for a new determination)</Trace>
<Trace level="1" type="T">Set interface action DEL into MAST</Trace>
</Trace>
</SAP:Trace>Hi VJ,
After a couple of times it is getting 402 error.
The error node says:
Error when receiving by HTTP (error code: 402, error text: ICM_HTTP_TIMEOUT)
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="INTERNAL">CLIENT_RECEIVE_FAILED</SAP:Code>
<SAP:P1>402</SAP:P1>
<SAP:P2>ICM_HTTP_TIMEOUT</SAP:P2>
<SAP:P3 />
Edited by: ashok sri on Dec 28, 2007 8:44 PM -
ERROR no 'DynamicConfiguration' element in the XI Message header
Attempt to process file failed with com.sap.aii.adapter.file.configuration.DynamicConfigurationException: The Adapter Message Property 'FileName' was configured as mandatory element, but there is no 'DynamicConfiguration' element in the XI Message hi am getting error .
and i am not getting
When we run our file to file scenario we can now see that there's a new section called DynamicConfiguration....
will you please tell me what should i do . i have configured
adapter specifc properties
thanking you
please help me it is very urgent
thanmking you
sridharHi sridhar,
Since your scenario is proxy you are getting this error as there is no concept dynamic configuartion for PROXY.
It is part of file adapter. Yet you can set value for FileName if your scenario is PROXY To FIle
DynamicConfiguration conf = (DynamicConfiguration)
container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey KEY_FILENAME = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
String Filename = arg[0]; // means you have to pass the file name(ABAP PROXY) from Source structure to UDF as a parameter.
conf.put(KEY_FILENAME, Filename );
what is your scenario. ABAPPROXY -
>?
Thanks
Gujjeti -
ABAP Proxy to SOAP Error..
Hello,
I am testing few scenarios which are built on ABAPproxy to SOAP. Most of the scenarios are working. But, couple of scenarios throwing "MAPPING.NO_MAPPINGPROGRAM_FOUND Interface mapping Object ID"
I am sure that this is very familiar error and i have gone through few threads here.
And most are telling that due to RFC calls. I checked my runtime cache, have revisted my mappings. Couldn't find any clue.
Is there any other checks i have to do for this to work.
Thanks in advance,
SrinivasHello Guru and Raj,
Thank you very much. I have gone thorugh other forums. Looks like there is something wrong either my SOAP message format or with my mapping which is not doing correct format. Since it is error message may be my proxy is not accepting. And yes it is a synchronous call.
Let me dig again and get some clues.
If it is XML format issue which my web service is not accepting. Do i have to change my mapping and check. Not sure at this point.
The message i am seeing is similar to what you posted. But, i am getting Application error.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Request Message Mapping
-->
- <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SAP="http://sap.com/xi/XI/Message/30">- <SOAP:Header>
- <SAP:Main xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" versionMajor="003" versionMinor="000" SOAP:mustUnderstand="1" wsu:Id="wsuid-main-92ABE13F5C59AB7FE10000000A1551F7">
<SAP:MessageClass>ApplicationError</SAP:MessageClass>
<SAP:ProcessingMode>synchronous</SAP:ProcessingMode>
Thanks,
Srini -
I deployed EJB to enable RFC Sender Adapter to work in exactly once in order
this is the code I used :
package com.netafim;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import javax.ejb.CreateException;
import com.sap.aii.af.mp.module.ModuleContext;
import com.sap.aii.af.mp.module.ModuleData;
import com.sap.aii.af.mp.module.ModuleException;
import com.sap.aii.af.ra.ms.api.DeliverySemantics;
import com.sap.aii.af.ra.ms.api.*;
@ejbLocal <{com.netafim.EOIORfcLocal}>
@ejbLocalHome <{com.netafim.EOIORfcLocalHome}>
@stateless
@transactionType Container
public class EOIORfcBean implements SessionBean {
public void ejbRemove() {
public void ejbActivate() {
public void ejbPassivate() {
public void setSessionContext(SessionContext context) {
myContext = context;
private SessionContext myContext;
Create Method.
public void ejbCreate() throws CreateException {
// TODO : Implement
public ModuleData process(ModuleContext moduleContext,ModuleData inputModuleData, String queueName)
throws ModuleException {
try {
Message msg = (Message)inputModuleData.getPrincipalData();
msg.setDeliverySemantics(DeliverySemantics.ExactlyOnceInOrder);
msg.setConversationId(queueName);
inputModuleData.setPrincipalData(msg);
} catch (Exception e) {
// raise exception, when an error occurred
ModuleException me = new ModuleException(e);
throw me;
// return XI message
return inputModuleData;
when I excute the function I get the following error in the comuunicatin chanel monitoring : no paramter was found.
in the paramters in the adapter modules tab I just wrote the queue name
for example : ( its supposed to be a string )
RFC******************queueName************XBIO_0001
still the module doesnt reconzie it.
Is the code above will add the functionaly of Excatly once in Order to the RFC Sender Adatper ? whats wrong with the paramters ?
thx,ShaiHi,
<i>
data is sent "exactly once in order".</i>
>>>I am not sure about this document which assures it is always EOIO.
I am sure that using proxy communication u can do the quality of service as EOIO.
To maintain the sequence in the client ABAPproxy with ABAP code-http://help.sap.com/saphelp_nw2004s/helpdata/en/65/40c9a4a1fa476288ac61b5fcc6bbde/content.htm
Regards,
Moorthy -
ABAP Client proxy - IF_WSPROTOCOL_ASYNC_MESSAGING
I have a question regarding the value for the attribue ASYNC_MESSAGING. In every client proxy, this attribute is defaulted to IF_WSPROTOCOL_ASYNC_MESSAGING. (inherits the value from IF_WSPROTOCOL).
Does that mean that the client ABAP proxy uses EOIO ? If so, how do you change it to EO?
If the change of QoS from EOIO to EO is not possible, would creating custom queues and using the SERIALIZATION CONTEXT to specify the custom queue help me alleviate issues with stuck EOIO queues on the sender/receiver sides while using proxy? Since the QoS is determined by the sender, I would assume that if there is way to set it on the Sender client proxy, that would prevent the queues from stopping processing if a message fails. In my case, I am not too concerned about preserving the sequence of the messages.
Any input will be appreciated.
Thanks
SridharHello Sridhar,
I'm not sure if I understand your question right, but I think following applies : ABAPProxy client (SAP sends data to SAP PI) behaves as EO by default. And if one needs to have messages to be delivered to the destination system in order, you need to "tell" this to SAP PI, when you send the data from ABAPProxy client. Thats the case you need include coding as mentioned here: http://help.sap.com/saphelp_nw04/helpdata/en/65/40c9a4a1fa476288ac61b5fcc6bbde/frameset.htm.
Please note, that for WAS 620 ABAPProxy client another routine applies. For more information see the link: http://help.sap.com/saphelp_xi20sr1/helpdata/en/02/265c3cf311070ae10000000a114084/frameset.htm
Regards
Tomas -
I use abapProxy to invoke an external webservice via SOAP adapter but i get an error "invalid http response: null" in sxmb_moni so i thought that there might be an mistake in request SOAP message and I installed TCPGateway to see logs about sending and coming message.
When i invoke the proxy, sending part of TCPGateway is empty but as you guess , coming part of it shows an error "java.net.ConnectException: Connection timed out : connect"
What maybe the reason for that SOAP adapter sends an empty SOAP message?
ThanksHi Abhishek;
As i mentioned , i used TCPGateway program on XI server to see going message to external webservice..this gateway program takes request and forwards it but it still comes as empty SOAP message from XI adapter to this TCPGateway program.
as you guess, when you send empty soap message , external webservice doesnt respond to this request so it gets timeout error.
ps: i tried to invoke this webservice via another third-party tool, it works properly.
What would another reason except firewall settings for this issue ? because i do all of these control on XI server, namely before empty soap message goes.
Thanks
Maybe you are looking for
-
How can I replace an existing report?
The way our Enterprise server is setup, we have a folder that we publish all reports to. This folder is proteced from view from anyone but admins. In order for our users to "see" a report we create a shortcut of the report in their User folder. This
-
Wifi Link OK, but only one SSID at a time
I am running my MBP (2.33, 10.5.1) on wifi, but I have a couple of different problems from what is reported here. The pull down for choosing which SSID will only have one choice. Very rarely, I can turn off the Airport, then turn it on and see severa
-
Any explanation as to why all my Pages documents get zipped when attaching them to email?
-
Watch folders stopped working in Elements 8 Organizer
Please can anyone help? I upgraded to Elements 8 some time ago and have been successfully using the watch folders service for several months to quickly add my edited photos to organizer. The watch folders has suddenly stopped working. I have read thr
-
Attack via Safari? WEIRD!!
I'm moving from one bookmark to another and suddenly I'm at http://liveantivirusinfov2.com/1/?id=2003-1&query=d622ad0d2&q=%3DzQ20jz3NYQMMI%3 DM The site takes control of Safari for a moment, pops up a Windows box (that won't close) and purports to "s