Usar o diretório "endossado" do Tomcat para o jar de implementação JDBC?

Usar o diretório "endossado" do Tomcat para o jar de implementação JDBC?

Nosso fornecedor recomenda colocar o jar MySQL JDBC no diretório "$CATALINA_HOME/endorsed" do Tomcat 6.

Não está claro para mim qual é o propósito dessa recomendação.

OComo fazer o carregador de classepara Tomcat 6 afirma o seguinte sobre o mecanismo "endossado":

Java suporta um mecanismo chamado "Mecanismo de substituição de padrões endossados" para permitir a substituição de APIs criadas fora do JCP (ou seja, DOM e SAX do W3C). Também pode ser usado para atualizar a implementação do analisador XML. Para mais informações, veja: http://docs.oracle.com/javase/1.5.0/docs/guide/standards/index.html.

O Tomcat utiliza esse mecanismo incluindo a configuração da propriedade do sistema -Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS na linha de comando que inicia o contêiner. O valor padrão desta opção é $CATALINA_HOME/endorsed. Este diretório endossado não é criado por padrão.

Assim, o diretório "$CATALINA_HOME/endorsed", se criado e ativado na linha de comando, pode ser usado para substituir implementações de APIs que acompanham o JDK. Mas o JDK não vem com uma implementação padrão para JDBC.

Se alguém quisesse carregar a implementação MySQL JDBC em um carregador de classe "superior a um carregador de classe webapp", neste caso, o carregador de classe "comum":

Hierarquia do carregador de classe do Tomcat 6

... alguém poderia colocá-lo em "$CATALINA_HOME/lib" ou "$CATALINA_BASE/lib" conforme descrito no Classloader Howto.

Meu fornecedor está recomendando práticas inadequadas?

Nota para si mesmo

No Tomcat 5 oHierarquia do carregador de classefoi o seguinte:

Hierarquia do carregador de classe do Tomcat 5

Graças a Deus pelas simplificações!

Responder1

Sim ele é.

O objetivo dessa recomendação é disponibilizar o JAR em todo o servidor e talvez ser carregado antes de tudo no diretório comum, pois a hierarquia apresentada também determina o que é carregado primeiro.

informação relacionada