Programación en castellano Añadir una dirección | Buscador | Cursos | Artículos | Foros | Formación

Sistema de Nombrado en Java (JNDI) y II
Autor: Sun
Traductor: Juan Antonio Palos (Ozito)


En esta página:


Empaquetar

La lección La Gran Imagen explicó que un proveedor de servicio normalmente contiene varios componentes. Normalmente un proveedor de servicio se entrega empaquetando todos sus componentes en un fichero JAR. Este fichero debería contener los ficheros class de los diferentes componentes y los ficheros de recursos JNDI. Los ficheros de recursos permiten a los programas usar el proveedor de servicio con una mínima configuración.

Aquí tenemos los contenidos de un fichero JAR para un ejemplo típico de proveedor de servicio:

tut/SampleContextImpl.class
tut/SampleContextImpl$Parser.class
tut/SampleContextImpl$ListEnum.class
tut/SampleContextImpl$BindingEnum.class
tut/SampleContextImpl$SearchEnum.class
tut/SampleInitialContextFactory.class

tut/OneObjectFactory.class
tut/TwoObjectFactory.class
tut/ThreeObjectFactory.class

tut/OneStateFactory.class
tut/TwoStateFactory.class

tut/SampleResponseControlFactory.class
tut/OneResponseControl.class
tut/TwoResponseControl.class
tut/ThreeResponseControl.class

tut/SampleObjectFactory.class

tut/sam/samURLContextFactory.class
tut/sam/samURLContext.class

tut/jndiprovider.properties
jndi.properties

Este proveedor de ejemplo está en el paquete tut. Contiene una implementación de contexto (tut.SampleContextImpl y sus clases internas) y una factoría de contextos iniciales (tut.SampleInitialContextFactory). Usa varias factorías de objetos, de estado y de controles de respuesta, algunas de las cuales están incluidas en los ficheros de recursos del proveedor, tut/jndiprovider.properties. El contenido de este fichero es el siguiente:

java.naming.factory.object=tut.ThreeObjectFactory
java.naming.factory.state=tut.OneStateFactory:tut.TwoStateFactory
java.naming.factory.control=tut.SampleResponseControlFactory

El incluir este fichero hace que las factorías listadas sean visibles sólo para esta implementación de contexto, como se describió en la lección Propiedades de Entorno. Las dos factorías de objetos, tut.OneObjectFactory y tut.TwoObjectFactory, no están incluidas en el fichero jndiprovider.properties porque siempre son referenciadas por sus nombres de clase. (En otras palabras, cualquier referencia que use una de estas factorías tendrá su nombre de clase en getFactoryClassName().)

El proveedor también contiene una factoría de objetos para la propia implementación de contexto, llamada tut.SampleObjectFactory. Esta clase es responsable de crear un ejemplar tut.SampleContextImpl, cuando se le de una referencia para él.

El proveedor soporta el esquema de URL sam y proporciona la correspondiente factoría de contextos URL y las clases de implementación tut.sam.samURLContextFactory y tut.sam.samURLContext. El fichero JAR contiene un fichero jndi.properties que nombra el prefijo del paquete de la factoría de contexto URL sam. Esto permite que la factoría de contexto URL sea considerada automáticamente cuando el JNDI busque factorías de contexto URL. Este es el contenido del fichero jndi.properties:

java.naming.factory.initial=tut.SampleInitialContextFactory
java.naming.factory.url.pkgs=tut

Este fichero también incluye una configuración para la factoría del contexto inicial. Esto hará que cualquier programa que use este fichero JAR use, por defecto, tut.SampleInitialContextFactory como la factoría de contextos iniciales.


Principio Página
© 1999-2002, Programación en castellano, s.l.
Contacto - Datos legales

ReD Internet: Hospedaje Web | envio sms gratis | Salvapantallas | Fondos de Escritorio, famosas | melodias moviles gratis| Gratis