Isolamento de ClassLoader por EAR no JBoss

Um relato sobre uma dificuldade encontrada com o JBoss, versão 4.2.3.GA para JDK1.6, relacionado ao isolamento de ClassLoader por EAR.

Relato abaixo uma dificuldade encontrada com o JBoss, versão 4.2.3.GA para JDK1.6, relacionado ao isolamento do ClassLoader por EAR.

É realmente estranho o parâmetro de configuração de deploy Isolated do arquivo \deploy\ear-deployer.xml ser false como default. Isso faz com que o ClassLoader do JBoss carregue uma única vez uma determinada classe presente em um módulo Java (Utility JAR) de um determinado EAR. Se outro EAR contiver aquela mesma classe, mesmo que em outra versão, o JBoss ignorará completamente esta. Na prática, é como se a primeira classe carregada pelo JBoss se tornasse globalizada para todas as aplicações. Ainda bem que isso é configurável… Mas demoramos um pouco para descobrir.

No meu fraco entendimento do assunto, nem deveria haver este parâmetro. Mas já que ele existe, sinceramente gostaria de ouvir uma explicação plausível do porque Isolated=false é default .

Para um melhor entendimento do assunto, encontrei os seguintes endereços:

http://community.jboss.org/wiki/ClassLoadingConfiguration (procure por EARDeployer nesta página)

http://stackoverflow.com/questions/1139367/deploying-multiple-versions-of-same-ejbs-and-classes-to-same-jboss-server (2º resposta à pergunta)

Deixe uma resposta