on 07-17-2006 4:19 PM
Hello,
I am doing an interface - R3-XI-File. The R3 RFC is called synchronously. I am checking if the file is posted at the receiver side or not by using Transport ackin BPM. In exception handling, deadline handling - I am returning the response to R3.
These are the steps I did,
1. I have rfc dest of type TCP/IP - in R3 - used that program id and defined RFC sender adapter in XI. - checked if rfc dest works - works fine. I have used the same rfc desc for Asynch process which works fine.
2. I have called the RFC inside a fm like this
call function 'ZFM_RFC_SYNCH'
destination 'XIRFC'
tables
FT_table1 = ITWA_table1
FT_BAPIRET2 = FT_BAPIRET2.
3. I am getting the following error in the sxmb_moni
SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="BPE_ADAPTER">SYNCHONOUS_MESSAGE</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>This process does not support the specified synchronous interface or does not support any synchronous messages The exception occurred (program: SAPMHTTP, include , line: 0)</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>
4. Audit log shows me this
Success RFC adapter received sRFC for 'ZFM_RFC_SYNCH' from R3/010. Attempting to send message synchronously
Success - Application attempting to send an XI message synchronously using connection AFW.
Success - Trying to put the message into the call queue.
Success - Message successfully put into the queue.
Success - The message was successfully retrieved from the call queue.
Success - The message status set to DLNG.
Error - Received XI System Error. ErrorCode: SYNCHONOUS_MESSAGE ErrorText: ErrorStack: This process does not support the specified synchronous interface or does not support any synchronous messages The exception occurred (program: SAPMHTTP, include , line: 0)
Error - Returning synchronous error notification to calling application: XIAdapter:SYNCHONOUS_MESSAGE:.
Error - Transmitting the message using connection http://host:port/sap/xi/engine?type=entry failed, due to: XIAdapter:SYNCHONOUS_MESSAGE:.
Error - The message status set to FAIL.
Anyone knows where the problem is exactly???
My BPM has receive step - opens SA bridge - then mapping to file message type - block with send step to file adapter - which has deadline and exception handling - for transport ack - and then send step to RFC resp - close SA bridge...
Anyhelp is greatly appreciated.
Thanks
Thilothama
HI,
CHeck the RFC response structure ? Also make refer this blog once-
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]
I think the problem is in Abstract Interfaces used in the BPM etc
Regards,
Moorthy
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Krishna,
Thanks for the reply.. My scenario is sync-async...I have to send the response back to R3 based on whether the file has been posted on the receiver side or not...
For this I used file ack .
1. step 1 - receive step - open S/A Bridge - sync rfc interface of R3
2. Inside block - a. transform step - for rfc req to File format. b. send step - asynchronous - has transport acknowledgement - for file. This block has deadline of 1 min and it throws exception if 1 min is reached. In the exception branch, I have transformation step - which is like a dummy mapping - same file format to rfc response. in which I am setting the type and message of the bapiret in rfc. So I inactivated the file adapter - which should make the bpm run for morethan sometime - after a min, calls deadline branch - which throws exception - sends response to R3. The objective is if the file was not posted in the receiver side - the sender - R3 should know abt it.
3. send - closes s/a bridge - uses rfc resp message to send back to R3.
questions:
1. Do I have to have a sync receiver(instead of file) inorder to send resp back to R3? as I am doing a dummy mapping here in exception branch, would this cause a problem????
2. I am checking if the BPM is active more than a min - in deadline - instead of that - is there any other way to know if we got +ve or -ve ack from file adapter and map that to a message.
3. Do we set up R3 as a receiver to receive response back from XI? in cofig?? (I dont think so - but I forgot)..
Thank you and appreciate your time...
Thilothama
After executing your scenario, is BPM is triggered ?
If so go to SXMB_MONI->PE->Technical details /Workflow log. SO that we can see the errors. I think, you are getting a Error in the Tranformation step of RFC response.
Even I am thinking in question no 1. I don't think so , it is possible. Because for a file system you are not sending the message with Sycnhronous Option right ? So I have a doubt here.
<i>3. Do we set up R3 as a receiver to receive response back from XI? in cofig?? (I dont think so - but I forgot)..</i>
>>Not required. For a Synchronous scenario it is not required to have separate Recieever Determination is requored for Response .
Alternative is you can try with Receiver Java Proxy (Java Server Porxy) which can act as a Synchronous. and even you can avoid BPM.
Hope this helps,
Regards,
Moorthy
I found what I missed. The BPM had a wrong interface in Config side. Previously I had async scenario and changed to sync..so didnt change to sync interface....Now its working.
I have one more question...For File transport ack - can we check the particular return message and do the processing?? instead of deadline and exception branches??
If the transport is successful, I see this message
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Response
-->
<SAP:Manifest xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7
If its negative, I get
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Response
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.MessagingException: Channel 'File_Receiver', Service 'File', Party '': File Adapter configuration not activated: com.sap.aii.af.ra.ms.api.RecoverableException: Channel 'File_Receiver', Service 'File', Party '': File Adapter configuration not activated</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
the reason is, for negative ack I use the exception brach and send the resp to R3 - saying the file was not processed. But if its success..I shold have another dummy mapping which should say successful....which I am not very much happy to do...is there any other way you can think of?? or worked on???
Thank you for all your great suggestions...
Hi ,
Just check these links-
/people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
/people/rashmi.ramalingam2/blog/2005/06/25/an-illustration-of-java-server-proxy
Demo ~
https://www.sdn.sap.com/irj/sdn/docs?rid=/webcontent/uuid/110ff05d-0501-0010-a19d-958247c9f798#jdi [original link is broken]
sekhar
Hi,
If you use Java Proxy, no need of File Adapter.
About Java Proxy-
/people/prasad.ulagappan2/blog/2005/06/27/asynchronous-inbound-java-proxy
http://help.sap.com/saphelp_nw04/helpdata/en/97/7d5e3c754e476ee10000000a11405a/frameset.htm
Regards,
Moorthy
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.