Nombres de propiedades

Un nombre de propiedad es una serie de caracteres. Se aplican determinadas restricciones a su longitud y al juego de caracteres que puede utilizarse.

Un nombre de propiedad es una cadena de caracteres que distingue entre mayúsculas y minúsculas, limitada a 4095 caracteres a menos que el contexto lo restrinja de otra manera. Este límite se encuentra en la constante MQ_MAX_PROPERTY_NAME_LENGTH.

Si excede esta longitud máxima cuando se utiliza una llamada MQI de propiedad de mensaje, la llamada falla con el código de razón MQRC_PROPERTY_NAME_LENGTH_ERR.

Puesto que no hay una longitud máxima de nombre de propiedad en JMS, es posible que una aplicación JMS establezca un nombre de propiedad JMS válido que no sea un nombre de propiedad IBM® MQ válido cuando se almacena en una estructura MQRFH2 .

En este caso, cuando se analiza, solo se utilizan los primeros 4095 caracteres del nombre de propiedad; los caracteres siguientes se truncan. Esto puede hacer que una aplicación que utiliza selectores no coincida con una serie de selección, o que coincida con una serie cuando no se esperaba, ya que varias propiedades podrían truncarse con el mismo nombre. Cuando se trunca el nombre de una propiedad,IBM MQ emite un mensaje de registro de errores.

Todos los nombres de propiedades deben seguir las reglas definidas por la Especificación del Lenguaje ' Java ' para Identificadores ' Java ', con la excepción de que el carácter Unicode U+002E (.) está permitido como parte del nombre - pero no el comienzo. Las normas para los identificadores " Java " equivalen a las contenidas en la especificación " JMS " para los nombres de propiedades.

Los caracteres de espacio en blanco y los operadores de comparación están prohibidos. Se permiten nulos intercalados en un nombre de propiedad, pero no se recomiendan. Si utiliza nulos intercalados, no se puede utilizar la constante MQVS_NULL_TERMINATED cuando se utiliza con la estructura MQCHARV para especificar series de longitud variable.

Mantenga los nombres de propiedad simples porque las aplicaciones pueden seleccionar mensajes en función de los nombres de propiedad y la conversión entre el juego de caracteres del nombre y del selector puede hacer que la selección falle inesperadamente.

Los nombres de propiedad de IBM MQ utilizan el carácter U+002E (.) para la agrupación lógica de propiedades. Esto divide el espacio de nombres para las propiedades. Las propiedades con los prefijos siguientes, en cualquier combinación de minúsculas o mayúsculas, están reservadas para su uso en el producto:
  • mcd
  • jms
  • usr
  • mq
  • sib
  • wmq
  • Root
  • Body
  • Properties

Una buena forma de evitar conflictos de nombre es garantizar que todas las aplicaciones añadan su nombre de dominio de Internet como prefijo en las propiedades de mensaje. Por ejemplo, si está desarrollando una aplicación utilizando el nombre de dominio ourcompany.com, puede nombrar todas las propiedades con el prefijo com.ourcompany. Este convenio de denominación también permite una selección más fácil de las propiedades, por ejemplo, una aplicación puede consultar todas las propiedades de mensaje que empiezan por com.ourcompany.%.

Ver Restricciones de nombre de propiedad para obtener más información sobre el uso de nombres de propiedades.