Is " Asynchronous Interaction" a anti pattern and what are the conditions to meet this?
The only definition I found is "If the interfaces donot explicitly define all conditions used in the application.." . But this resembles to leaky abstraction anti pattern. So how Asynchronous Interaction anti pattern differ from leaky abstraction anti pattern?
I was in a assumption that you mentioned "Asynchronous Resource Integrater" which is, integrates messages with transaction services within the business container. As per the definition, It provides a standardized approach to integrating MDB with other managed beans in business container.
Now re-reading your statement, I think you are correct regarding "Asynchronous Interaction".
"Asynchronous Interaction" decouples the input and output messages for the interaction(between server and client). In this implementation, the design is converted so that there are two separate interactions; one from client to server that the client uses to issue its request to the server, and another from server to client that the server uses to notify the client of its response. This is part of web service design pattern. Other web service patterns are JMS Bridge, Web Service Cache, Web Service Broker. But Paul and Bambara's book explained only about "Web Service Broker" in webservice design pattern.(but mentioned about Asynchronous Interaction,JMS Bridge, Web Service Cache, Web Service Broker for the scope of exam)
JMS Bridge : Provides interoperability between two different JMS implementations. The JMS Bridge pattern suggests keeping the different subsystems using their own JMS implementations, but advocates the introduction of a client into the enterprise application that can relay messages from one JMS implementation to the next. It decouples an abstraction from its implementation so that the two can vary independently.
Web Service Cache:- JAX-WS programming model provides an application handler facility that enables you to manipulate a message on either an inbound or an outbound flow. You can add handlers into the JAX-WS runtime environment to perform additional processing of request and response messages. You can use handlers for a variety of purposes such as caching, capturing and logging information and adding security or other information to a message
Indeed; asynchronous interaction is a very broad concept, which shows up in a great many implementation technologies, including both remote, and local ones (like the event handlers and callbacks that I mentioned).