Chapter 4. Creating a Provider Endpoint
Abstract
A provider is an endpoint that sends messages to remotes endpoints and, depending on the message exchange pattern, waits for a response. They use the Spring framework's
JMSTemplate
interface.
Important
The Java Business Integration components of Red Hat JBoss Fuse are considered deprecated. You should consider migrating any JBI applications to OSGi.
4.1. Introduction to Provider Endpoints
Where does a provider fit into a solution?
A provider endpoint plays the role of a provider from the vantage point of other endpoints inside of the ESB. As shown in Figure 4.1, “Provider Endpoint”, a provider endpoint receives messages from the NMR and places them onto a JMS destination. If the NMR message is part of an in-out message exchange, the endpoint will listen for the response on a reply destination.
Figure 4.1. Provider Endpoint
![JMS provider endpoint in a message exchange](https://access.redhat.com/webassets/avalon/d/Red_Hat_JBoss_Fuse-6.0-Using_the_JMS_Binding_Component-en-US/images/cd446dd06261b62b896d813fbb7b4534/jmsprovider.gif)
Types of providers
The JMS binding component has two types of provider endpoints:
- Generic
- The generic provider endpoint can handle any type of message data. It is configured using the
jms:provider
element. - SOAP
- The SOAP provider endpoint is specifically tailored to receive SOAP messages. It uses a WSDL document to define the structure of the messages. It is configured using the
jms:soap-provider
element.TipThe Apache CXF binding component's JMS transport is better adapted to handling SOAP messages, but offers less control over the JMS connection.