cancel
Showing results for 
Search instead for 
Did you mean: 

Need best Architecture design for the following scenario

0 Kudos

Hi Experts,

I need best architecture design for the following scenario:

Sender: Mail

Receiver: if sender body contain u201DApproveu201D, then call SOAP adapter, If SOAP adapter execute successfully, then send Mail(SOAP adapter executed successfully) and SMS . So receiver is SOAP, Mail and SMS.

My current approach issue:

Three message mapping:

Mapping1: mail to SOAP

Mapping2: mail to Mail

Mapping3: mail to SMS

In interface determinant>u201DSelect all three operation mappingu201D> u201Cselect order at runtimeu201D.

Issue in current approach: For me first SOAP adapter should complete successfully, after that only my Mail and SMS operation mapping should execute:

But problem is before success of SOAP adapter engine, Mail and SMS mapping completed or integration engine executed.

Note: There is possible to fail the SOAP request in adapter engine.

Kindly help me --> u201CAm I going correct way or want to change the architectureu201D?

Thanks for advance!!

Regards, Kumar

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Dear Kumar

I will go for a BPM

One Synchronous send step followed by a switch step with two banches.

In condition give the +Ve ack from soap. On ful fillment execute the Branch containing two transformations (one for mail and one for SMS)

Go for this design if it is not a heavily loaded interface and perfoamance is not an issue.

Sourabh

Answers (2)

Answers (2)

former_member181962
Active Contributor
0 Kudos

Hi Sourabh,

Since you have asked for "best" design, i would suggest you to go for ccBPM only.

Performance is not a big concern if you have PI 7.1 Ehp 1 or above.

Best Regards,

Ravi

0 Kudos

Thanks for your response!!!

yes my SOAP call is Successful response (happy flow) from the soap call.

Yes mine SOAP call is big one, which take more than 5 min.

As ur suggestion i will go for CcBPM, SOAP syn.

one small doubt, when call SOAP, sometimes i will get timeout exception, but in background SOAP execute successfully.

how to increase the time in SOAP call?

Thanks in advance;)

0 Kudos

Thank you for repley

I will going to use ccBPM approch.

Also i was informed to basic regarding the timeout exception.

Thanks and Regards,

Kumar

baskar_gopalakrishnan2
Active Contributor
0 Kudos

What do you mean by successful execution of soap call? Are you talking about Successful response (happy flow) from the soap call instead of application error ? Then based on the response you want to decide sending mail and sms. How big call is your soap ? If your soap interface is very simple I can give the other possible way.

Sender sends the message, use mapping to read the content and then do soap call in the mapping itself and after seeing the soap response decide about two receivers (mail and SMS). If your soap call is very simple one, you can go for it. Otherwise I would not recommend this. The reason is you loose some visibility regards to monitoring during soap call in the mapping.

Other option is go for CCBPM. Here you receive the message, use send step to soap interface which is sync step. Then after seeing the response create another block with fork steps each for two senders mail and sms. If response bad then dont proceed or execute the next block. Simply use exeception or control step to jump out from the block,