JMS consumer endpoints specify the type of messages they use. JMS consumer endpoint
can use either a JMS ObjectMessage
or a JMS TextMessage
. When
using an ObjectMessage
the consumer endpoint uses a byte[]
as
the method for storing data into and retrieving data from the JMS message body. When
messages are sent, the message data, including any formating information, is packaged into
a byte[]
and placed into the JMS message body before it is placed on the
wire. When messages are received, the consumer endpoint will attempt to unmarshall the
data stored in the JMS body as if it were packed in a byte[]
.
When using a TextMessage
, the consumer endpoint uses a string as the
method for storing and retrieving data from the JMS message body. When messages are sent,
the message information, including any format-specific information, is converted into a
string and placed into the JMS message body. When messages are received the consumer
endpoint will attempt to unmashall the data stored in the JMS message body as if it were
packed into a string.
When native JMS applications interact with CXF consumers, the JMS application is
responsible for interpreting the message and the formatting information. For example, if
the CXF contract specifies that the binding used for a JMS endpoint is SOAP, and the
messages are packaged as TextMessage
, the receiving JMS application will get
a text message containing all of the SOAP envelope information.
Consumer endpoint can be configured by both XML configuration and via WSDL.