Sistema de Nombrado en Java (JNDI) y II

La secci�n Objetos Java y el Directorio nos mostr� c�mo almacenar y leer objetos Java desde el directorio. Espec�ficamente, la lecci�n Directorios LDAP explic� como los objetos Java son representados como atributos en un directorio LDAP.

La lecci�n Directorios LDAP y la RFC 2713 describen la representaci�n de una Reference como varios atributos LDAP. Por defecto, se usa el car�cter almohadilla ("#") para codificar el RefAddr en la Reference. Si este caracter ya aparece en el contenido de la RefAddr, necesitaremos usar otro caracter. Hacemos esto configurando la propiedad de entorno "java.naming.ldap.ref.separator" con un string que contenga un separador de caracteres.

Aqu� tenemos un ejemplo. Si ejecutamos el ejemplo de referencia y luego examinamos la entrada "cn=favorite" en el directorio, veremos los siguientes atributos:

objectclass: top, javaContainer, javaObject, javaNamingReference
javaclassname: Fruit 
javafactory: FruitFactory
javareferenceaddress: #0#fruit#orange
cn: favorite

Podemos modificar este ejemplo para que use el caracter dos puntos (":") como separador, de esta forma:

// Ask to use ":" as the encoding character
env.put("java.naming.ldap.ref.separator", ":");

// Create the initial context
DirContext ctx = new InitialDirContext(env);

// Create the object to be bound
Fruit fruit = new Fruit("orange");

// Perform the bind
ctx.rebind("cn=favorite", fruit);

El programa modificado produce los siguientes atributos:

objectclass: top, javaContainer, javaObject, javaNamingReference
javaclassname: Fruit
javafactory: FruitFactory
javareferenceaddress: :0:fruit:orange
cn: favorite

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP
ARTÍCULO ANTERIOR