cancel
Showing results for 
Search instead for 
Did you mean: 

Resource Adapter development acknowledgement (deliveryAck / applicationAck)

Former Member
0 Kudos

I was trying to find information on the difference between deliverAck and applicationAck and how to use them when creating a jca Resource Adapter for XI.

Looking at the sample resource adapter (file system), the CCIInteraction class, send(...) method, the method, calls ackNotSupport(...) to say that it supports deliveryAck only, not applicationAck.

I have tried to set to call applicationAck as well, asynchronously at a later time, and can't see any change in the status of the message in the Message Monitoring when I call applicationAck in the Connection object. Even if I send an async deliveryErrorAck through at a later date, I can't see any change in state.

If the execute method of the CCIInteraction class returns successfully, then the status is always 'successful', no matter what happens afterwards.

Is there any more documentation than the small amount available for how deliveryAck and applicationAck affect a message status and how these acks should be called. Especially in relation to async deliveryAck and applicationAck from the external application.

Thanks

Accepted Solutions (0)

Answers (1)

Answers (1)

stefan_grube
Active Contributor
0 Kudos

Hi Anthony,

In the sender you request the acknowlegdments. The receiver has to support the acknowledgement which is requested.

Standard sender adapters (besides IDOC and RNIF) cannot request acknowledgments. When you create an adapter for requesting acknowlegdements on sender sender side, the receiver adapter has to provide the funvtionality as well. The standard receiver adapters (besides IDOC and RNIF) cannot provide application acknowledgements.

So what you have to do is: In a receiver adapter you check which ack is requested and provide the response according to this.

Another point: The ack status <i>application error</i> or <i>application OK</i> are permanent, so you cannot change the status afterwards.

In principle the system ack states that the message has passed the adapter without error, the application ack means that the application system has posted the data of the message.

Hope that helps

Stefan

bhavesh_kantilal
Active Contributor
0 Kudos

Hello Stefan,

Completely of track.

In your reply above you have mentioned,

Standard sender adapters (besides IDOC and RNIF) cannot request acknowledgments.

Our problem is the Sender RNIF adapter. The Sender RNIF adapter by default requests for a Ack and we need to turn this off.

With Idoc's this is possible but do you know how to turn it off for RNIF adapters?

Reason we need to do this because we are facing the same issue as the one discussed in this thread but unfortunately we do not have the answer to it yet and I am hoping you can help us on this.

Regards

Bhavesh

bhavesh_kantilal
Active Contributor
0 Kudos

Just a quick note : We do not want to diable the RNIF Business Signal. These seem to work perfectly as needed.

What we want to disable is the request for the System Ack by the Sender RNIF adapter.

Regards

Bhavesh