Interoperatividad de contenedor

La interoperatividad de contenedor describe la posibilidad que tienen los clientes y servidores del producto con distintas versiones de negociar las diferencias en el soporte nativo de métodos de buscador de Enterprise JavaBeans (EJB) y la compatibilidad de Java EE.

Interoperatividad de los formatos de manejadores en WebSphere Application Server, Versión 5 y Versión 5.0.1

Las aplicaciones que intentaban la persistencia de manejadores en enterprise beans y EJBHome debían crear una subclase de ObjectInputStream en WebSphere Application Server, Versión 5. Esta acción era necesaria para que la subclase ObjectInputStream pudiera utilizar el cargador de clase de contexto para resolver las clases de los enterprise beans y los apéndices EJBHome.

Asimismo, los manejadores que se han creado y tienen persistencia en WebSphere Application Server, Versión 5, solamente funcionan con los objetos que tienen una interfaz remota sin modificar. Si se modifica la interfaz remota, el manejador ya no es válido porque el apéndice se serializa en el manejador y el UID de versión en serie cambia si se cambia la interfaz remota.

Este release presenta un nuevo mecanismo de persistencia de manejadores que evita los problemas de implementación de la versión anterior. No obstante, si se utilizan manejadores para este despliegue de WebSphere Application Server, debe tener en cuenta los puntos siguientes cuando aplique esta actualización, los FixPacks de WebSphere Application Server futuros y los fixpacks acumulativos del contenedor de EJB para WebSphere Application Server, Versión 5.

Si se encuentra un manejador con persistencia o un manejador local de WebSphere Application Server, Versión 5 en el sistema WebSphere Application Server, Versión 5.0.1, se puede leer y utilizar. Y además se convertirá al formato WebSphere Application Server, Versión 5.0.1 si se reitera su persistencia. El formato de WebSphere Application Server, Versión 5.0.1 no lo puede leer un sistema WebSphere Application Server, Versión 5 a menos que se aplique PQ72184.

Los problemas surgen cuando los manejadores tienen persistencia y se comparten entre sistemas cuyo nivel no es WebSphere Application Server, Versión 5.0.1 o posterior. No obstante, un sistema de la Versión 5 puede recibir un manejador de la Versión 5.0.1 de forma remota a través de una llamada para obtener un manejador en un enterprise bean o un getHomeHandle en un EJBHome. La llamada remota se realizará correctamente, no obstante, cualquier intento de persistencia de la misma en el sistema de la Versión 5 tendría las mismas limitaciones en cuanto al uso de ObjectInputStream y cualquier cambio en la interfaz remota invalidaría el manejador con persistencia.

Cuando la aplicación almacene manejadores de forma persistente y comparta esta persistencia con varios clientes o servidores de aplicaciones, aplique WebSphere Application Server, Versión 5.0.1 o PQ72184 tanto para los sistemas cliente como servidor al mismo tiempo. De no hacerlo, estos sistemas no podrán leer los datos del manejador que almacenan los sistemas actualizados. Asimismo, los manejadores que WebSphere Application Server Versión 5 ha almacenado pueden forzar las aplicaciones del sistema actualizado para que continúen creando una subclase de ObjectInputStream. Las aplicaciones que utilizan el planificador y Process Choreographer de WebSphere Application Server Enterprise, Versión 5, pueden resultar afectadas por estos cambios. Los usuarios deben actualizar los sistemas de la versión 5 al mismo tiempo ya sea con la Versión 5.0.1 o con PQ72184.

Si las aplicaciones almacenan manejadores en el contexto de sesión, o localmente en un archivo del mismo sistema que no comparten las demás aplicaciones de sistemas diferentes, es posible que puedan actualizar individualmente los sistemas en lugar de actualizarlos todos al mismo tiempo. Si las aplicaciones del contenedor de cliente y de cliente Thin no comparten datos de manejadores con persistencia, también se pueden actualizar según sea necesario. No obstante, los manejadores que se han creado y tienen persistencia en WebSphere Application Server, Versión 5, Versión 4.0.3 y posterior (con el distintivo de propiedad establecido) o Versión 3.5.7 y posterior (con el distintivo de propiedad establecido) no se pueden utilizar si cambia la interfaz local o la interfaz de factoría.

Si cualquier WebSphere Application Server, Versión 3.5.7 o Versión 4.0.3 y posterior habilita la propiedad del sistema com.ibm.websphere.container.portable y la establece como true, cualquier manejador que apunte a objetos en dicho servidor tendrá las mismas limitaciones de interoperatividad. Asimismo, si cualquier WebSphere Application Server, Versión 3.5.7 y posterior o las aplicaciones de la Versión 4.0.3 almacenan un manejador obtenido desde WebSphere Application Server, Versión 5 o Versión 5.0.1, se aplicarán las mismas restricciones en lo relacionado con la creación de la subclase ObjectInputStream y el uso de manejadores una vez realizado un cambio en la interfaz remota.

Réplica de la sesión Http y los manejadores

Esta nota se aplica si ha colocado manejadores en factorías o Enterprise JavaBeans, o bien, referencias de EJB o EJBHome en la sesión Http de la aplicación y utiliza la réplica de sesiones Http. Si tiene previsto replicar un entorno mixto de máquinas de versión 5.0.0 y máquinas de versión 5.0.1 ó 5.0.2, debe aplicar primero el e-fix acumulativo del contenedor de versión 5.0.0 más reciente en las máquinas de la versión 5.0.0 antes de permitir el servidor de la versión 5.0.1 o 5.0.2 en la topología. Esto se debe a que los servidores de la versión 5.0.0 no pueden entender el formato de manejador con persistencia que se utiliza en el servidor de la versión 5.0.1 y 5.0.2. Este caso es parecido al de los sistemas de la versión 5.0.0 y la versión 5.0.1 o 5.0.2 que intentan utilizar una base de datos compartida que se ha descrito anteriormente. Sin embargo, en este caso se trata del objeto de sesión Http y no la base de datos que proporciona la persistencia.

Correlación de despliegue en sentido descendente

El tamaño de los objetos Handle ha aumentado debido al fixpack colocado para permitir que se realice la serialización y la deserialización sin los requisitos anteriores de creación de subclases de ObjectInputStream, etc. El despliegue en sentido descendente de un objeto que contiene referencias EJB y EJBHome crea un dll de tabla de base de datos que tiene un campo de 1000 bytes de VARCHAR para BITDATA que contendrá el Handle. Puede que el Handle del objeto no entre en el campo predeterminado de 1000 bytes, y que tenga que ajustarlo a un valor superior. Pruebe con incrementos de 250 bytes, esto es, 1250, 1500, etc.


Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rejb_cntinterop
File name: rejb_cntinterop.html