we have a situation, when integrating system A and B (how unusal, right:proud:).
System A initiates the integration, some transformations are done and resulting flat file is uploaded to system B FTP. System B has 20 minutes to process the file and upload send some acknowledgement back to it’s FTP. IS grabs that file using FTP polling and scheduler. We need to log an error/warning using IS Core Audit Log in the case that the reply won’t get back in 20 minutes.
We have IS in cluster, so we are unable to use (pub.sync:notify/pub.sync:wait). We managed to solve it by using pub.jms:sendAndWait, but I am still not happy with the solution - I don’t think that the service should be hanging 20 minutes on IS when waiting for reply…
Do you please have any idea of how to solve this in some elegant way?
There could be two solutions, one based on simple trigger join(AND) and another based on simple BPM.
- Trigger Join(AND) - You can publish a request document(docA) as soon as file is FTP’ed successfully and configure a trigger based on AND join for this document(docA) and reply document(docB) which would be published by the service processing the acknowledgement file. You need to set trigger join time out as 20 minutes which would create an entry in IS logs in case the join time out expires and reply document(docB) is not received within 20 minutes.
- Simple BPM - You could create a simple BPM where you could specify a step utilizing AND Join for similar request and reply documents. Join Timeout transition would help in writing custom code to handle the timeout expire scenarios which would not be possible in option 1.
thank you for your response, trigger join seems to be ideal solution and it is working fine.
hi to all can anybody tell me some task related to flow services so that i get good grip over the topics