cancel
Showing results for 
Search instead for 
Did you mean: 

Re-using JMS Receiver Channel

Former Member
0 Kudos

Hi,

I have scenarios with SAP -> PI -> 2 Different External Parties.

External Parties use JMS.

There are some flows which are common for both the parties, like sending Acknowledgement from SAP to JMS.

Now can I just configure one common Receiver Communication Channel and Send message (Acknowledgement) to any of the two Parties? So I will have two Receiver Agreements using the same Receiver JMS channel.

Like by using some concept can I populate JMS channel parameters like IP Address or Server Name , JMS Queue

Thank you,

Pankaj.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

Any comment on whether the receiver channel can be reused if all the details are same?

Thank you,

Pankaj.

rajasekhar_reddy14
Active Contributor
0 Kudos

You can not ...for every JMS scenario you have to create individual channels, even though if all details same.

Regards,

Raj

Former Member
0 Kudos

Hi,

In that case it is going to be an issue for us.

We are passing multiple messages (around 10) to one PARTY. Likewise we have 6 Parties, if we have to create one channel each for one message then we will end up creating 60 receiver channels.

I was under the impression that if I create one Receiver JMS channel for one party then I could send all the 10 messages through that same channel to that particular party. Just that I will be re-creating the Receiver Agreement for all the 10 Service Interfaces.

Is there any workaround?

Thank you,

Pankaj.

Former Member
0 Kudos

Any comment on whether the receiver channel can be reused if all the details are same?

Yes, you can use the same JMS receiver channel if you are sending the messages to same queue (IP,port,Queuename etc).

The message structures can be different. But since you are sending it to the same queue,you can reuse the receiver agreement.

stefan_grube
Active Contributor
0 Kudos

> I was under the impression that if I create one Receiver JMS channel for one party then I could send all the 10 messages through that same channel to that particular party. Just that I will be re-creating the Receiver Agreement for all the 10 Service Interfaces.

You need as many receiver channels as you have JMS queues. When you have 60 JMS queues, then you need 60 channels.

When you send all messages to same JMS queues and receiver can identify the message type anyhow, then you need only one channel for this queue.

But even when you have only one JMS queue, you might need seperate channels anyway, for example when you use FCC for each interface individually.

But when you have 60 interfaces, then I would assume that the creation of 60 channels would be less effort compared to 60 mappings.

Former Member
0 Kudos

Hi,

You need as many receiver channels as you have JMS queues. When you have 60 JMS queues, then you need 60 
channels.

I have only 6 queues; one each for one Party.

When you send all messages to same JMS queues and receiver can identify the message type anyhow, then you need 
only one channel for this queue.

Ok.

But even when you have only one JMS queue, you might need seperate channels anyway, for example when you use 
FCC for each interface individually.

So basically if the setting is different then I need to have that number of channels. the way messages are sent is the same in all the cases. Even when we are using Dynamic Configuration it is the same for all the messages to be send to the External Party.

Thank you,

Pankaj.

stefan_grube
Active Contributor
0 Kudos

> So basically if the setting is different then I need to have that number of channels. the way messages are sent is the same in all the cases. Even when we are using Dynamic Configuration it is the same for all the messages to be send to the External Party.

So you need only 6 channels.

Answers (1)

Answers (1)

stefan_grube
Active Contributor
0 Kudos

> Now can I just configure one common Receiver Communication Channel and Send message (Acknowledgement) to any of the two Parties? So I will have two Receiver Agreements using the same Receiver JMS channel.

>

> Like by using some concept can I populate JMS channel parameters like IP Address or Server Name , JMS Queue

No, this is not possible.

Former Member
0 Kudos

Hi,

Thank you for confirming. help.sap.com mentions that "There must be exactly one sender agreement for each communication channel." However did not mentioned anything about Receiver channel and hence wanted to confirm.

Thank you,

Pankaj.

stefan_grube
Active Contributor
0 Kudos

> Thank you for confirming. help.sap.com mentions that "There must be exactly one sender agreement for each communication channel." However did not mentioned anything about Receiver channel and hence wanted to confirm.

Technically you can use the same receiver agreement, but then all messages go to same JMS queue.

Former Member
0 Kudos

Hi,

Technically you can use the same receiver agreement, but then all messages go to same JMS queue.

Ok. So the main issue is that we cannot configure the Queue dynamically.

Suppose if there are mulitple messages (structure-wise different) going to same queue, i.e same receiver, from PI, in that case can I re-use the receiver channel (just re-create Receiver Agreement)?

Thank you,

Pankaj.

Edited by: Pankaj Sharma XI on Oct 21, 2010 10:12 AM