on 01-09-2014 8:01 AM
Hello,
I am having JDBC-RFC-JDBC scenario where-in I am fetching values from Oracle DB and pushing into SAP and update the response from SAP back to DB. For that I am using Request-Response modules for sender JDBC adapter and had synchronous scneario i.e. sync sender interface and RFC as receiver interface.
When tested, it is giving error as "Error occurred while sending message (GUID 5c8ccadb-ad1e-4e26-1669-d7424275037e): com.sap.aii.af.service.cpa.impl.exception.CPAObjectKeyException: Value of key must not be null: ObjectId"
For RR bean, i have passThrough = true and for ResponseOneWayBean receiverChannel name and receiverParty set to respective receiverChannel and receiverParty. The logs suggests it is getting reply from SAP (as seen in SXMB_MONI) and is getting mapped perfectly to document format of JDBC but gives this error while processing ResponseOneWayBean.
I tried adding all the parameters such as Adapter Name = JDBC etc but no use. Also tried configuring a dummy HTTP sender (using the same RFC response payload) and JDBC receiver scenario which works perfect (meaning no issue in document format of receiver JDBC).
Any idea what can went wrong?
Thanks in advance.
Regards
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks all for your replies.
The problem is resolved with RequestResponse and ResponseOneWayBean on the receiver adapter (no idea why it doesn't work for sender).
Basically i created another ICO with sender as RFC name. In ESR, i created a Message mapping between RFC response and JDBC document format and respective Operation mapping. The catch was the operation mapping I created with sender as RFC name. It gave a warning but got ignored at runtime I suppose.
Regards
Hi Ameet,
We are working on same scenario request you plz share the doc how to configure the request response bean.
Thanks,
Raj
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ameet
Also try :
deactivating the channel -> Full cache refresh and then Restart.
check with
File-RFC-File(Without BPM) - Process Integration - SCN Wiki
& try to change the receiver CC with File for temporary in second flow:
Regards
Gagan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Ameet,
Have you set receiverService also in the responseOneWayBean?, could you share a sender parameters screen-shot to check if the problem is a typo one?
Regards.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Did you checked the key value of JDBC Update statement whether it updated or not...as error seems relevant to key field...
Also I want to give an info here that by using the RequestResponse Bean at the receiver channel you can achieve more benefits than using the same at the sender adapter.
1. Scenario will behave as asynchronous in PI
2. Restart/Reprocessing will be possible from PI from any point of failures.
Search SDN for document by alexander for more details if required.
HTH
Rajesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Rajesh,
Yes, my next option would be the same but for attaching it to receiver channels, I will require another scenario to be designed .
But was just wondering why it doesn't work with the sender ones. Actually i found one blog mentioning that the parameters adapterType and adapterNamespace are mandatory.
But i have all of them but still not working.
Regards
Hi,
if all the parameters are correct then the other alternative is to fire the query directly at database level
i.e. execute the database query directly in database with the response values received from the RFC response...this is avoid the issue with the response data received from RFC...
Also if you are using ICO then log the messages at each steps to check the response message received at each step....
ensure there is no issue in cache update
HTH
Rajesh
Hi Rajesh,
Can you let me know how the configuration for asych scenario would look like.
I tried to configure in following manner
Async interface for JDBC sender to RFC
Attached module to RFC Receiver with following parameters for ResponseOneWayBean
interface SenderInterface created for RFC Response
interfaceNamespace- Namespace of Sender interface
Created Sender agreement with option Sender has virtual receiver with Sender interface created for RFC response
and completed configuration steps as Legacy as receiver and JDBC receiver interface and channel in interface determination and receiver agreement respectively.
But i have observed that when RFC enters ResponseOneWayBean, it looks for sender agreement with SAP system and RFC as sender and it errors out since it couldn't find configuration. Now I can't have ESR config to have Operation mapping between RFC Response and JDBC update statement. Any idea how this can be managed?
Thanks in advance.
Regards
Hi,
Check the below document of Alexander on step by steps details .
http://scn.sap.com/docs/DOC-34624
Also check the SAP Note 1912032 if this applies to your system..
HTH
Rajesh
User | Count |
---|---|
101 | |
13 | |
13 | |
11 | |
11 | |
7 | |
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.