cancel
Showing results for 
Search instead for 
Did you mean: 

JMS Sender Adapter EOIO with different messages in Queue to RFC

Former Member
0 Kudos

Dear Colleague,

In one of my scenarios i am using JMS Sender Adapter and Websphere MQ series.

In my MQ Series Queue i get different Messages with Different Structures.

for e.g in my MQ Series Queue Q1 i have M1, M2, M3 coming in Order.

Now i need to doa Mapping of M1 to a Standard BAPI B1 call through RFC at the reciever side.

Now i need to doa Mapping of M2 to a Standard BAPI B2 call through RFC at the reciever side.

Now i need to doa Mapping of M3 to a Standard BAPI B3 call through RFC at the reciever side.

We are aware that on Receiver side we can have multiple Recievr Determinations.so i can send it to 3 different BAPIs.

Question:

-


But how do i split the Messges which are coming out of MQ series Q from JMS to 3 different Mapping Structures as we knwo that we do not 'Multiple Sender Interface Determinations' from Determined based on the Message which is coming in.

Hope i have been clear in making myself understand about the problem given above.

I have alos given below the same in a bit Graphical Form.

MQ Series --> M3, M2, M1(Messages) --> JMS Adapte(EOIO) --> M1(Message) -> RFC -> B1(Bapi)

--> JMS Adapte(EOIO) --> M2(Message) -> RFC -> B2(Bapi)

--> JMS Adapte(EOIO) --> M3(Message) -> RFC -> B3(Bapi)

Is it possible to achieve the above result. Answers fo the solution are most welcome. These can be also from the new Netweaver Release Versions. If we have the solution to these in New version we will implment the New Netweaver Releases.

Thanks & Warm Regards

Venugopal

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

you need to set up dedicated MQ queues per message type - so in you case 3! It's not possible to fetch different message types from the same MQ queue. Also this would violate the EOIO protocol.

Hope this answers your question.

Regards,

Kai

Former Member
0 Kudos

Dear Kai,

if i have 3 MQ series Queues then how are we going to maintain the flow of the Messages in the same order in which has come into MQ series queues.

this mesans to say that all the Message come in Parallel out from JMS or MQ side and will be mapped onto Reciever side.

But in my case i wil need to have M1 first M2 second and M3 third.

This means to say that M1 recived and acknowledged then M2 should come and acknowledged and then M3 should be acknowledged.

How this will be possible with your solution of making 3 MQ series Queues.

Please do let me know.

Thanks

Venugopal

Former Member
0 Kudos

This is a little complicated.

Normally EOIO protocol is used for 1 message type only. It's not designed to work across different types.

So I guess you need to go for BPM here, but how will you handle following case:

M1 comes in => processed by PI => M2 comes in => processed by PI => new M1 comes in before M3 reaches PI

Is there a sequence given M1, M2, M3 then again M1, M2, M3 ...? Then you need to have an identifier which gives you information about the end of a "complete run" (M1, M2, M3).

Former Member
0 Kudos

hi,

yes we know its complicated and we would not like to use BPM.

the sequence of messages are coming in the seuence M1, M2, M3 and then once again M1, M2, M3.

so there will never be a M3 Message coming before M2.

So what can be other solution ?

Thanks

Venugopal

Former Member
0 Kudos

I guess you will have to go for BPM in this case. Unless you can guarantee that messages will come definetely in order M1, M2, M3. But if this is the case you don't even need EOIO protocol.

Maybe you can agree with the sender side to send out M2 after an acknowledgement for M1 / send out M3 after ack. for M2. This way you could control the flow.