cancel
Showing results for 
Search instead for 
Did you mean: 

RFC Receiver Error

01-05-2016 1:03 PM
2853 views 10 comments Go to solution
0 Likes
SAP Managed Tags
Subscribe

Hi,

I am doing SOAP to RFC scenario in New system,

I am getting the RFC error as follows..


Returning to application. Exception: com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException: functiontemplate from repository was <null>


I tried to send source message from RWB-test tab also, getting the same error,

There were no  missing of mandatory fields in BAPI. I filled all fields, with the same fields I can able to do test run in SE37 manually.

date format also correct.

In message monitoring ->selected message->payload->MainDocument- then getting Payload content is empty.

If I click "View Message content" then I am getting the payload.

can you please let me know how to solve this?



0 Likes

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Likes

Hi Khaja,

Check the request message which you sending to RFC adapter(Payload after request mapping), the root node must be the name of the function module.

Check below sap note, Question 16.

730870 - FAQ XI 3.0/ PI 7.0/ PI 7.1/ PI 7.11/ PI 7.2/ 7.3 RFC Adapter

Q 16: While sending a message to the RFC Adapter the error "...

functiontemplate from repository was <null>" is shown. What is the

reason?

A: After receiving a message from the Adapter Engine, the RFC Adapter

extracts the payload from the message. Normally this should be an XML

document in the RFC-XML format. In this format the root element of the

XML document represents the name of the function module and is

enclosed in the fixed RFC namespace

'urn:sap-com:document:sap:rfc:functions'. But this only will be

checked at a later point, when the conversion from XML to native RFC

is done. As prerequisite of this conversion the structures and types

of the function module parameters has to be known. This is also called

metadata or function template. To get this function template the name

of the function module is extracted from the root element of the XML

document and is queried against the metadata repository of the

communication channel. If the metadata repository doesn't have a

function module with this name, the exception named above is thrown.

Possible reasons are

o The XML document, which was sent to the RFC Adapter, is not a

RFC-XML document. So the root element name of this document is not

the name of a function module and thus can't be found in the

metadata repository.

o The metadata repository doesn't contain an entry for this function

module name. Normally the metadata repository will be an R/3 system

and it's function module repository can be searched with the

transaction SE37.

Regards,

Praveen.

former_member190536
Participant
0 Likes

I am getting empty payload in the monitoring. Is there any way to find the error?

Former Member
0 Likes

Check whether Data is sent from RFC in ECC.

Former Member
0 Likes

Hi Khaja,

You need set the parameter as per below blog in order to display the synchronous message in message monitor.

After you set the parameter check the root node of the RFC request message, it should be the same name as RFC name in ECC.

Regards,

Praveen.

former_member190536
Participant
0 Likes

Thanks All,

I resolved it finally, the interface mapping not worked, the response message not mapped there, and I re-developed all IR objects Now it started working.

Thanks to Praveen Gandepalli  this helped me to check the payload in Message monitoring.

Answers (1)

Answers (1)

Former Member
0 Likes

Hi Khaja,

May be the PI has a wrong RFC metadata, try to clear the CPA cache and try.

Regards.

Former Member
0 Likes

Hello Khaja,

Any changes in RFC has been done?

If so do a RFC metadata update and stop/start the channel.

former_member190536
Participant
0 Likes

Hi,

I am using PO 7.4, I re-started RFC channel but no use. No changes, I am using standard BAPI only,

BAPI_BILLINGDOC_CREATEMULTIPLE using this bapi to create invoice.

Former Member
0 Likes

Hi Khaja,

Go to ECC st22 transaction to check any exception.

There were no  missing of mandatory fields in BAPI. I filled all fields, with the same fields I can able to do test run in SE37 manually.

Even with this test if you are using wrong format in the date or currency fields the exception could be raised.

Pay attention that you are using the right client number that you are using to connect to ECC to test the RFC.

I have checked that not all is optional in that BAPI:

I think you can set an external breakpoint in the first line of the RFC code with the same user that you are using on the RFC receiver channel and check if the RFC can be called.

Regards.

former_member190536
Participant
0 Likes

I am not getting any error in ST22, And I mapped to all required fields.. Still I am facing this issues.