Programación en castellano
Inicio > Tutoriales > Lenguajes orientados a objeto > J2EE > Sistema de Nombrado en Java (JNDI) y II
-Tutoriales

Sistema de Nombrado en Java (JNDI) y II


Misceláneas

Esta sección describe problemas varios adicionales que una implementación de contexto debe manejar.

. Manejo de Recursos

El lenguaje de programación Java proporciona recolección de basura automática. Esto significa que cuando un objeto deja de ser referenciado, el sistema de ejecución Java lo elimina. close() da al usuario del API una forma de eliminar un ejemplar de Context y sus recursos asociados antes de que la recolección de basura automática lo recoja. Esto es importante para las implementaciones de contexto basadas en red tanto porque las conexiones de red son un recursos limitado tanto para los clientes como para los servidores. El ejemplo del espacio de nombres plano no proporciona ninguna implementación sustancial para close(). Una implementación real, espacialmente una que manejara conexiones de red, definiría close() para eliminar referencias y conexiones.

. Propiedades de Entorno

La lección Las Reglas de Fondo describe como una implemetnación de contexto debería tratar sus propiedades de entorno. Incluso aunque los ejemplos del espacio de nombres plano y del espacio de nombres en forma de árbol no usan propiedades de entorno, deberían proporcionar implementaciones para métodos relacionados con el entorno.

Como se sugirió en la lección Las Reglas de Fondo, getEnvironment() debería proporcionar una cópia de sólo-lectura o un clon de sus propiedades de entorno a su llamador.

Un programa usa addToEnvironment() y removeFromEnvironment() para actualizar un entorno de contexto. El ejemplo del espacio de nombres plano simplemente actualiza su hashtable de entorno interna. Una implementación real examinaría el nombre de la propiedad y actuaría apropiadamente para actualizar el comportamiento del ejemplo Context adecuadamente.

. Operaciones no Soportadas

Una implementación de contexto debe proporcionar una implementación válida para lookup(). Para todos los otros métodos, si una implementación de contexto no soporta un método particular, la definición de ese método debería lanzar una OperationNotSupportedException.

Por ejemplo, una implementación de contexto para un servicio de nombres de sólo lectura no puede soportar ningún método que implique actualizaciones. Aquí tenemos un ejemplo de una definición de esa implementación de contexto del método Context.bind().

public void bind(Name obj, Object obj) throws NamingException {
    throw new OperationNotSupportedException(
        "Read-only service does not support updates");
}
 
Patrocinados
 

Copyright © 1999-2007 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad
Mantenida por: Claudio y Dani.

Hospedaje web y servidores dedicados linux por Ferca Network

red internet: jugar gratis | amor | navidad 2009 | registro de dominios | servidores dedicados
más internet: comprar | gratis | posicionamiento en buscadores | decoración libre | gifs animados