
What are event providers, how do they differ from standard consumer proxies, and when can they be used?
When consuming a Web service, you can use one of two proxy types:
Consumer Proxy (called a Service Consumer in the Enterprise Services Repository)
Event Provider
Event providers are similar to consumer proxies (consumer proxies are also referred to as service consumers). Although both act as an interface for consuming Web services, you may want to use event proxies when messages from an application should be sent to more than one Web service destination, also known as a subscriber.
| Feature | Standard consumer proxy (service consumer) | Event provider |
|---|---|---|
| Receiver determination | The application must either specify the logical port explicitly or at least provide an identifier or context so that the Web Service Runtime can determine the correct logical port, and hence determine which Web service provider to send the message request to. | The application contains absolutely no information or identifiers about the service provider. It cannot control which service(s)/subscribers messages are sent to. |
| Number of receivers (service providers) of message | 1 | >=1 |
| Communication method | Synchronous or asynchronous | Asynchronous |
Standard consumer proxies (sevice consumers):
Each message has only one (Web service) destination.
Event providers:
This is the so-called parent message.
The logical port is determined based on the operation being called. See Configuring an Event Provider.
In other words, for each (parent) message sent from an application, a child message is created for each logical port defined for the event provider. In this way, the same message can be sent to one or more (Web service) destinations.