Pregunta

Tengo una aplicación java que funciona con un EJB, sin embargo si:

  1. El EJB se actualiza, la aplicación no funciona.
  2. El servidor de la aplicación se actualiza, la aplicación no funciona.

Sin la participación humana, ¿existe algún método preferido para actualizar los archivos jar del cliente para el servidor de aplicaciones y el bean?

Si el método preferido depende del servidor de la aplicación, asuma jboss.

¿Fue útil?

Solución

Esa es una de las razones por las cuales las personas migran a los servicios web :) O también usan JMS.

Realmente, si su servidor de aplicaciones se actualiza o si se cambia el proveedor, no hay forma de que sus apéndices antiguos / extranjeros funcionen con el nuevo código en el lado del servidor. :-(

¿Recuerdas que EJB declaró que debería haber un rol de implementador de aplicaciones? Depende de él preparar client.jar para las aplicaciones del cliente y distribuirlo (¿o puede ser que sea el empaquetador de la aplicación? No importa; el punto es: no es una operación automática ).

Algunos trucos pueden ser posibles (como exigir colocar client.jar en un lugar específico del servidor para descargarlo primero por el cliente, luego usar el cargador de clases para usarlo), pero esos son más trucos que la práctica establecida.

En cuanto a los detalles de JBoss, no tengo ninguna información.

Otros consejos

Su problema básico es que si el contrato de interfaz entre un componente cambia, se rompe el otro componente. Este no es un problema limitado a las aplicaciones y EJB, simplemente no es seguro para el compilador.

El único enfoque automatizado que conozco es configurar sus proyectos de tal manera que el proyecto de la Aplicación dependa del proyecto EJB (dentro del IDE y los archivos de compilación), lo que le brinda la verificación del compilador. Y desplegándolos juntos como un EAR.

Si esa no es una opción, y deben implementarse por separado, entonces su desarrollador EJB necesita estar en su juego para mantener intactas las interfaces compatibles con versiones anteriores.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top