cancel
Showing results for 
Search instead for 
Did you mean: 

Receiver Not Found in Integrated Configuration

Former Member
0 Kudos

Hi all,

I am working on PI 7.1 EHP1 and have built a simple Integrated Configuration (IC) to route messages via AAE without mapping. The IC has just one sender service (with blank party) having sender JMS channel, one o/b interface and one receiver service (with blank party) having receiver JMS channel, one i/b interface - and no condition mentioned. The o/b interface has been created in ESR (not sure if it's really reqd), and receiver interface is dummy i.e. not created in ESR. When I test it using "Test Configuration" option in ID (I hope we can test IC like this), it fails at receiver determination step giving "Receiver not found" error as below.

<Trace level="1" type="T">No Relation found - accept given Receivers. </Trace>

<Trace level="2" type="T">Classic Receiver Determination via Rules. </Trace>

<Trace level="3" type="T">...create rule engine </Trace>

<Trace level="2" type="T">No Receiver found behaviour: 0 </Trace>

I tried to make dummy changes and re-activate it, plus I checked that cache is also up-to-date, but the issue persists. I have already referred to SAP Help, some how-to guides, SDN threads etc. but not really getting the exact solution..

I mimicked the same scenario using conventional receiver determination (RD) and other objects, which worked. But I saw one difference though. In conventional RD, the receiver party and service gets defaulted to "*" during creation. If I do so in IC, then it gives error while creating, so I had to keep receiver party/service blank while creating IC, but yes I mentioned receiver in the Receivers tab though.

Given this, can someone pls provide any clues for resolving the error ?

Once this gets resolved, I want to put a conditions in RD to have multiple receivers. For this, I have built a sender file channel with content conversion to read the required field used in condition. However, I want to execute basic integrated configuration first, before moving ahead.

Regards,

-Shankar

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Sanker,

You said that after dummy changes, cache was upto date but did you check in the CPA Cache property page for this ICO has all the content?

To check whether this ICO object is updated with proper receiver names, get the ICO object id first from ID and then go to CPA Cache page (http://host:port/CPACache/) and search ICO object id in the page, once you see the id, copy the entair row adn past it in note pad. This content represents entair object that stored in CPA Cache table.

Now in that content search out with receiver name whether it's present or not, if not change ICO object again and re-activate and then ensure receiver service names are present in the content.

Regards,

RK

Answers (1)

Answers (1)

markushardank
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Shankar,

did you also test your scenario at runtime, via sending a message? Or is it just the build in test tool in the integration directory?

I am not 100 % sure but for my understanding this just checks if the classic objects (sender agreement, ...) can be found and not the new object integrated configuration.

So I would try the scenario via sending a message and check in RWB.

If this is not working you can probably paste the error here?

Kind regards,

Markus

Former Member
0 Kudos

Thanks for your replies..

RK,

I confirmed that the CPA cache status is reflecting the receiver service name in "ToService" parameter of the line for IC object.

Markus,

I am testing this in the "Test Configuration" in ID as I don't have access to send test data to AE from RWB. I will ask someone else to try that and revert with findings.

Regards,

-Shankar

Former Member
0 Kudos

Hi Markus,

I tested the interface by starting sender JMS channel (I put a test message in the JMS queue), however it still shows error in channel log that "Receiver cannot be determined"..

Anything else that I should check in my config ?

Regards,

-Shankar

Former Member
0 Kudos

While working further on this, I noticed two things u2013

1) If I use u201CNot operation-specificu201D option in "receiver" tab of IC, then the configuration works fine, i.e. the message passes through AE and I can see it in receiver JMS channelu2019s queue.

2) If I use FCC in sender JMS channel (since the source message is flat file) and give a condition in RD, I still get receiver determination error. So not sure whatu2019s the exact issue.

Even if I use a dummy sender interface (not present in ESR), still I see the same two results given above.

Can anyone confirm for sure whether we can use the payload based condition to route message to multiple receivers ? I want to specify something like -

if source field = value 1, then route to receiver 1

if source field = value 2, then route to receiver 2

Regards,

-Shankar

former_member854360
Active Contributor
0 Kudos

Hi,

Conditional receiver determination is possible From SAP PI 7.1 EHP1 in Advance Adapter Engine.

Former Member
0 Kudos

Yes, that's what I am trying to build..

Former Member
0 Kudos

Hi all,

I have resolved the issue of receiver determination. The error was coming because value of "Key Field" mentioned in the content conversion of JMS sender channel was not matching with the value in actual test paylaod, since I was using the same field for routing also, so I used to enter different test values for that field which is why it was failing in some cases. Anyways, the conditions in IC are working fine now.

However, there is another problem. Since I am using content conversion in sender channel, the converted XML message goes to receiver and not the original flat text message. Is it possible to use content conversion only for conditional routing in IC, but pass the original text message to receiver ? On first thought, I don't think this is possible, but if anyone has any ideas, pls let me know.

Regards,

-Shankar

markushardank
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

it`s just possible if you process the file twice (so have it two times with similar name) in PI, once as main file for the content conversion and an additional one as attachement and during mapping you replace the original file with the attachement.

You can configure in the channel that the second file is required for processing.

But you might get problems if you use functionality like splitting in the sender adapter into multiple messages, as the attachement will - with standard functionality - always include the hole file as attachement.

best regards,

Markus