File-RFC-File – Value of key must not be null
Hello ,
just setup a FILE-RCF-FILE scenario. In function module an exception ( abap raise command ) should send back.
Setup the response and fault message types in Repository ( Service Interface ).
I got following error:
” com.sap.aii.af.service.cpa.impl.exception.CPAObjectKeyException: Value of key must not be null: ObjectId “
In monitor I see the two messages ( File –> RFC ) and ( respnse = RCF –> File ), both with red flag ( application error ).
Mapping the exception message so far ok. ( I can see the Inbound exception-.message and the mapped Outbound exception-message ).
Has anybody an idea what’s wrong ?
Regards, Reinhard
xmlns:SAP=”http://sap.com/xi/XI/Message/30“ xmlns:SOAP=”http://schemas.xmlsoap.org/soap/envelope/“>
Here part of the Adapter Engine log :
================================
Information: Message successfully put into the queue
Information: The message was successfully retrieved from the request queue
Information: The message status was set to DLNG
Information: Delivering to channel: GeneratedReceiverChannel_RFC
Information: MP: entering1
Information: MP: processing local module localejbs/RfcAFBean
Information: RfcAdapter received a synchronous message.Trying to send sRFC for Z_ARCHIV_CREATE_SYNCHRON_META
Information: RfcAdapter received a synchronous message.Trying to send sRFC for J2EE_GUEST
Information: MP: leaving
Information: The message was successfully delivered to the application using connection RFC_http://sap.com/xi/XI/System
Information: The message status was set to DLVD
Information: The application sent the message synchronously using connection File_http://sap.com/xi/XI/System. Returning to application.
Information: The application sent the message synchronously using connection File_http://sap.com/xi/XI/System. Returning to application.
Error: MP: exception caught with cause com.sap.aii.af.service.cpa.impl.exception.CPAObjectKeyException: Value of key must not be null: ObjectIdError:
Error: File processing failed with com.sap.aii.af.service.cpa.impl.exception.CPAObjectKeyException: Value of key must not be null: ObjectId
Information: The message was successfully transmitted to endpoint http://xi30.company.com:51300/sap/xi/engine?type=entry sing connection File_http://sap.com/xi/XI/System
Information: The message status was set to DLVD.
Solved:
Added on module tab ( sender channel ):
adpaterNamespace, adapterType and receiverParty
Thanks Reinhard Doeker, for adding solution. Helped me in solving the same problem
An old hint, but still good.
Worth noting, this fix also works when using the RequestResponseBean to bridge async to sync interfaces. I found the adapterType and AdapterNamespace became mandatory input parameters when changing the final receiver channel specified in the adapter module parameters from a FTP to a SFTP. Got same error as listed above, and it was resolved by adding those two parameters.
So thanks for sharing, Reinhard.