cancel
Showing results for 
Search instead for 
Did you mean: 

BPM - Application Acknowledge.

Former Member
0 Kudos
58

Hi guys,

I’m using a SOAP sync scenario to call a sync/async bridge. Under BPM the process asynchronous can waste much time until finish. So, the web service need to maintain the connection established to waiting a response that can have a big delay and generate slowness in the service.

To prevent this situation I would like to send a response back to webservice before the request entered in BPM. If it possible, it would not have to wait that the async process finished to send a response with “ok or received”.

Is it possible do this like an Application acknowledge?

Thanks in advance,

Ricardo.

Accepted Solutions (1)

Accepted Solutions (1)

stefan_grube
Active Contributor
0 Kudos

Does your web service not request any response from the receiving system? In that case you can set up the SOAP sender channel with QoS EO. Them the web service receives an empty response, when the SOAP adapter receives the message. You can pass the request directly to the asyn receiver without BPM.

If you want to send a response from the BPM with valid data, it is not sufficient to send back an ack message, as the SOAP sender does not support acks at all. You have to create a response message interface and send a message from BPM back to the web service.

Regards

Stefan

Former Member
0 Kudos

Hi Stefan,

The web service (acts like a sender) was generated by a wsdl also generated by XI as a sync outbound interface and a message type response “input type” was included.

The objective is send a message to BPM - s/a bridge, and when the s/a bridge finish, a response message is sent back to the web service as response message with something like "received". I would like to do this synchronously using the same connection (already established) and prevent a creation of a new response message interface… Is it possible?

If I need to create a new response message interface, I also need to configure a receiver SOAP adapter to put the response message on the web service. If so, this interface is not sync, but async… tell me if I’m wrong.

You also said that SOAP sender adapter does not support acks at all!!! If so, I can’t do it this interface like I want…

Regards,

Ricardo.

Message was edited by: Ricardo Quintino

stefan_grube
Active Contributor
0 Kudos

Hi Ricardo,

when you design an sync interface then you want to send a response back from the receiver application. If you don't want to send a response, there is no need for an sync interface.

The web service receives a technical OK (HTTP 200) when an async message is received by XI. Is this information not sufficient?

Sure you can have a sync message to start a BPM and the BPM sends a response back, but when response is just 'OK' and no application data, what is the use of it? It is not more information as an async message would have.

When you want to speed up the processing of the BPM, then create 2 BPMs. The first one deals with the sync message and triggers the second one. In this case the response would go back to the sender faster as when you do the whole stuff in one BPM.

But think about using an async interface for the SOAP call instead, as you don't have any data to send back.

Regards

Stefan

Former Member
0 Kudos

Hi Stefan,

The OK (HTTP 200) is not sufficient because if anyone change the interface name or another parameter (except host name) on the URL endpoint in WSDL and retry to send a message, receives a 200 ok with guarantee of delivery, but not with guarantee of interface processed successfully.

I would like to use sync/async bridge scenario with a response message back for web service with something like “Processed successfully” and no application data is needed in this response.

This makes sense to you?

Regards,

Ricardo.

stefan_grube
Active Contributor
0 Kudos

Hi Ricardo,

of course it makes always sense to think about error handling.

Think about which information the web service client needs and what it should do for error processing.

Then decide, which approach suit your scenario best.

Regards

Stefan

Former Member
0 Kudos

Hi again Stefan,

The information that web service need is a simple response message with “processed successfully”.

My question is: Is it possible doing this using my s/a bridge in the same sender connection, without new receiver message interface and receiver soap adapter?

This response message can be sent to the web service directly from the s/a bridge without using a receiver soap adapter? I’m asking this, because if I need to use receiver soap adapter it means an async connection and I need to know the wsdl of the web service to put the message there…

I just only need a response message comparable an http 200 ok, but instead of this I would like to use a message “processed successfully”.

It can be possible?

Thanks a lot for your precious help.

Regards,

Ricardo.

Message was edited by: Ricardo Quintino

stefan_grube
Active Contributor
0 Kudos

Hi Ricardo,

> The information that web service need is a simple

> response message with “processed successfully”.

To optimize in integration scenario it is not sufficient to know, what the interfaces request technically. You need to know, how the information is used in the application system. That is way I am asking for.

> My question is: Is it possible doing this using my

> s/a bridge in the same sender connection, without new

> receiver message interface and receiver soap

> adapter?

When you have a sync interface, the response is send back to the application automatically. You need not create an interface for the response.

> This response message can be sent to the web service

> directly from the s/a bridge without using a receiver

> soap adapter?

Yes.

> I just only need a response message comparable an

> http 200 ok, but instead of this I would like to use

> a message “processed successfully”.

>

> It can be possible?

Yes

Regards

Stefan

Former Member
0 Kudos

Stefan,

Thanks a lot

Points rewarded

Regards,

Ricardo.

Answers (0)