Tengo este extraño problema con los servidores tomcat 5.5 y tomcat 6.0. Tengo dos aplicaciones web que se instalarán en Tomcat. Cuando se inicia Tomcat, estas dos aplicaciones web también se inician simultáneamente, pero a veces una aplicación web no se inicializa debido a la falla de inicio en una aplicación, otra aplicación está obteniendo errores de clase avanzada durante la ejecución. En Tomcat 7.0, la aplicación se ejecuta correctamente incluso si la otra aplicación no se pudo inicializar.Error ClassNotFoundException en Tomcat 5.5 y Tomcat 6.0
Después de algunas depuraciones, llegué a saber que hay un contenedor llamado crystal.jar que se encuentra en la carpeta web-inf/lib de ambas aplicaciones. He movido el contenedor a la carpeta common/lib de tomcat y luego comenzó a funcionar bien. Quiero saber por qué funciona bien en tomcat 7.0 no en las versiones tomcat 5.x y tomcat 6.x. ¿Hay algún cambio en la arquitectura de carga de clases entre estas versiones?
Gracias
EDIT1: La biblioteca estaba en la ubicación del directorio de aplicaciones tanto en el WEB-INF \ lib y no tienen ninguna dependencia con los archivos DLL externa. Acabo de leer acerca de la arquitectura del cargador de clases Tomcat 5.5 y me di cuenta de que cada aplicación web tiene su propio cargador de clases. Las bibliotecas de la carpeta WEB-INF \ lib y la carpeta de clases se cargarán en este cargador de clases. Las bibliotecas, cualquiera que esté almacenada en el directorio común, se colocarán en un cargador de clases compartido. Entonces esta biblioteca debe cargarse por separado en el cargador de clases separado de la aplicación web. Incluso si una aplicación web no puede iniciarse, otra aplicación web debería funcionar de manera independiente. Es por eso que me sentí extraño y necesito investigar Furthur.
lo que sólo tiene una mayor MaxPermSize, ¿verdad? –