cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP to RFC - Response is triggered with an exception

Former Member
0 Kudos

Hi PI floks,

My scenario is SOAP to RFC with Synchronous communication. This is working fine in Quality for quite some time. But recently there is structure changes in RFC. So, i have re-imported the RFC into PI system and done the necessary mapping changes.  When i am testing with SOAP UI , it is working fine in DEV system. But in Quality system i am getting below error.

"<Name>JCO_ERROR_XML_PARSER</Name>

<Text>Expecting a tag to begin with '<' instead of '#', in " # # # # # "</Text>"

Actually i supposed to get the response from RFC as RFC FM.Response, but i am getting as RFC FM.Exception.

I have cleared all the caches & re transported ESR and ID objects to QA system. But issue remains the same. any idea on this?

Thanks,

RK

Accepted Solutions (1)

Accepted Solutions (1)

former_member186851
Active Contributor
0 Kudos

Hello Ramakrishna.

Stop and start the RFC channel and check.

Former Member
0 Kudos

This message was moderated.

Answers (1)

Answers (1)

iaki_vila
Active Contributor
0 Kudos

Hi Ramakrishna,

May be there are any change in RFC ABAP code and now thre RFC trigger the exception. Check that the parameters in RFC are the same in PI and in ECC (pay attention to the mandatory ones). Try the RFC directly in the ECC with your data.

Regards.

former_member186851
Active Contributor
0 Kudos

Hello Inaki,

Will Restarting the channel work?once we did change before restart we had some data issue after doing a restart it worked.

iaki_vila
Active Contributor
0 Kudos

Hi Raghuraman,

I think clearing the cache and restarting the RFC would be enough to clear the old metadata and to assure the RFC java thread takes the new metadata and doesn't use the old one. However, sometimes in quality system you can have data with a different format as dev system, for example a negative currency or date field that in dev system is always initial. Then if Ramakrishna following your suggestion continued with the problem, i think he can test the RFC with the PI data and the same user, also he should check the st22 transaction in the ECC system.

Regards.

former_member186851
Active Contributor
0 Kudos

Thanks Inaki for crystal clear infy..

Former Member
0 Kudos

Same input data is working well with the RFC in SE37, but causing the issue with SOAP UI. After stop and start the RFC channel , it is working well.

former_member182412
Active Contributor
0 Kudos

Hi Ramakrishna,

When you change the RFC at the backed the changes are not reflected automatically at runtime you need to update the cache manually, so one of the way to update the cache is restart the channel that is why after restart the channel the new metadata loaded in metadata cache of the RFC channel and interface works.

Q 29: When a function module is changed in the backend, are the

changes published to the runtime at real-time?

A: No, an update made to a function module in the backend is not

informed to the runtime. This is because the function module metadata

is cached by the system during the first invocation of the module. All

the subsequent references to this function module are directed to the

cache. Any update made to the function module in the backend will not

be notified to the runtime, unless the cache is cleared.

The cache is cleared when any of the following happen:

- The corresponding RFC channel is restarted

- The RFC channel is changed in the Integration Directory

- The RFC adapter service is restarted

- The Dependent J2EE services are restarted (MessagingSystem,

CPACache, and so on)

- The J2EE server is restarted

Regards,

Praveen.