cancel
Showing results for 
Search instead for 
Did you mean: 

File to SOAP Asyn - 1 to N multimap with WAIT

kavita_dubey
Explorer
0 Kudos

Dear Experts,

As per early requirement, I have a scenario:

Sender(File)------>PO------>Receiver(SOAP)   ASYNC

The scenario is Asyn, 1 to N multimapping. If file has 'n' records, receiver will get 'n' web service calls to post each record in different messages. I did it using Java Mapping also based on some other factors. I am reading file and sending 'n' multimap structure out of Java code in Outputstream and splitting it using Multimap envelope and changing service interface cardinality to 0 to unbound.  Due to this all webservice requests go to receiver one after other without wait. They come up saying that we should wait for response of web service before launching next call.

The problem here is - we are not handling responses as per early design.

Is it possible to introduce wait with this current design(Async) before making next web service call to receiver?

The second approach I can see to handle it using BPM but I am trying to utilize current design.

Please provide your suggestions.

Regards

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member182412
Active Contributor
0 Kudos

Hi Kavita,

If you enable Maintain Order at Runtime in Receiver Interfaces tab of ICO then all the child message will be processed in a sequence.

I have tested in my side and it is working, the first message failed because of this second message in holding status.

Regards,

Praveen.

former_member186851
Active Contributor
0 Kudos

Hello Kavitha,

Try using the below code which will create a delay between each message

kavita_dubey
Explorer
0 Kudos

Hi Raghu,

I checked this link. It is not working in my case as I am splitting messages  from a file(1 to N multimapping) and need to send each request after a delay.

If I would also be getting every webservice call as separate message instance from sender then probably it could have worked.

Regards

Danish

former_member186851
Active Contributor
0 Kudos

Hello Kavitha,

You mapping in same right?

Then this piece of code should work else BPM would be next option.

former_member182412
Active Contributor
0 Kudos

Hi Raghu,

You commented to this blog it is not working for same cases so why are you referring this solution to others??

Regards,

Praveen.

former_member186851
Active Contributor
0 Kudos

Hello Praveen,

It was for different case where I had 2 mappings, that's why I asked her for number of mappings.

former_member182412
Active Contributor
0 Kudos

Hi Raghu,

She is using multi mapping so after the mapping the child messages will be created so this solution will not work for child messages because child message still processed parallel.

Regards,

Praveen.

former_member186851
Active Contributor
0 Kudos

Hello Praveen,

Ya ,Might be.

Then it would be CCBPM or Maintain Order at Runtime.


But Maintain Order at Runtime would be better and simple solution as you tested it as well.

kavita_dubey
Explorer
0 Kudos

Hi Praveen,

Yes, you are correct, child messages get processed together in mapping and move out of mapping together. There is no control while using thread.sleep even on top parent or 0 to unbounded node.

I have activated the "maintain order" option and trying to analyze,second call goes to soap only after response is received for the first.

I am just wondering - if any message in between got failed will stop the rest messages in queue. Also, trying to analyze the impact of it in our requirement.

However, there is one more catch because of which we would have to use probably use BPM where we would be required to create a response file collecting all the response messages on target server itself for them to refer logs.

Can we achieve without BPM? I think creating N files can be handled without BPM but in case I have to create one single file of all the responses? What's your views?

former_member182412
Active Contributor
0 Kudos

Hi Kavita,


I am just wondering - if any message in between got failed will stop the rest messages in queue

Yes if first message failed other messages will be sitting on hold until you clear the first message either by cancel or resend.


Can we achieve without BPM? I think creating N files can be handled without BPM but in case I have to create one single file of all the responses? What's your views?

Yes BPM is the option.

Regards,

Praveen.