Message
properties are additional headers that can be assigned to a message.
They provide the application developer or JMS vendor with the ability
to attach more information to a message. The
Message
interface provides several accessor and
mutator methods for reading and writing properties.
Properties can have a
String
value, or one of several
primitive (boolean
,
byte
, short
,
int
, long
,
float
, double
) values. The
naming of properties, together with their values and conversion
rules, are strictly defined by JMS.
Properties
are name-value pairs. The
name, called the identifier, can be just about any
String
that is a valid identifier in the Java
language. With a couple of exceptions, the rules that apply to naming
a property are the same as those that apply to the naming of
variables. One difference between a JMS property name and a Java
variable name is that a property name can be any length. In addition,
property names are prohibited from using one of the
message selector
reserved words. These words include:
NOT
, AND
, OR
, BETWEEN
, LIKE
,
IN
, IS
,
NULL
, TRUE
, and
FALSE
.
The property names used in JMS-defined properties and
provider-specific properties use predefined prefixes. These prefixes
(JMSX
and JMS_
) may not be used
for application property names.