Erros 'Jackson' ao subir aplicações
-
A partir da release 6.2.8.5 do Ponto e Akita, e versão 2.0.7.10 do GT Soft, ao subir o deploy destas aplicações, começaram a ocorrer erros ao realizar o deploy em Tomcat 7 com as dependências
jackson, conforme exemplos abaixo:SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/opt/tomcat/enterprise/apache-tomcat-7.0.62/webapps/akitasoft/WEB-INF/lib/jackson-databind-2.10.3.jar!/] for annotations ... SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/opt/tomcat/enterprise/apache-tomcat-7.0.62/webapps/akitasoft/WEB-INF/lib/jackson-annotations-2.10.3.jar!/] for annotations ... SEVERE: Unable to process Jar entry [module-info.class] from Jar [jar:file:/opt/tomcat/enterprise/apache-tomcat-7.0.62/webapps/akitasoft/WEB-INF/lib/jackson-core-2.10.3.jar!/] for annotationsEsta dependências estão associadas com o requisito de utilização do javaj-jwt, que passou a ser necessária a partir da implementação da autenticação Oauth (Okta e Microsoft Office 365).
Mesmo exibindo os erros acima a aplicação sobe e é inicializada, porém para que estes logs não sejam apresentados nos arquivos de log da aplicação (Tomcat 7), basta incluir os JARs na lista de arquivos que não serão escaneados pelo Tomcat.
Para o Tomcat 7, o procedimento a ser realizado é o seguinte:
- Arquivo: /conf/catalina.properties
- Incluir os arquivos na propriedade:
tomcat.util.scan.DefaultJarScanner.jarsToSkip(lista de arquivos), conforme exemplo abaixo:
tomcat.util.scan.DefaultJarScanner.jarsToSkip=
<provável que já existam arquivos aqui>
,jackson-annotations-*.jar,jackson-databind-*.jar,jackson-core-*.jar
Já no Tomcat 8 nenhuma ação é necessária. O erro relatado não é logado. Inclusive, durante as pesquisas, vários posts indicavam que a melhor solução seria a atualização do Tomcat.
-
Identifiquei que essas novas bibliotecas são o motivo de ter quebrado o deploy nos servidores Weblogic 12.1.3.
A partir das versões 6.2.8.2 do Ponto Soft e do Akita Soft, onde essas bibliotecas passam a estar presentes na pasta lib do war, o deploy não funciona mais no Weblogic, apresentando um erro que remete a algo similar ao que ocorre com o tomcat, onde ocorre um erro no Admin Server:
Stack trace for message 149004 weblogic.application.ModuleException: nullVou buscar por alternativas para resolver esse problema, mas por enquanto essas versões novas não tem como serem implantadas no Weblogic 12.1.3 (em outras versões de Weblogic não temos como validar).
-
A partir das versões citadas abaixo, as orientações passadas para evitar a geração de logs no Tomcat não precisarão ser seguidas.
- Ponto Soft: 6.2.8.6
- Akita Soft: 6.2.8.6
- Ponto Soft Mobile ADM: 1.1.2.0
- GT Soft: 2.0.7.11
Foi providenciada a substituição da biblioteca responsável por realizar a decodificação do token JWT, deixando de utilizar a biblioteca
java-jwt(que possui dependência das demais bibliotecas:jackson-databind,jackson-coreejackson-annotaions), passando a utilizar a bibliotecanimbus-jose-jwt.Com a substituição da biblioteca, bem como com a refatoração da implementação realizada, nenhuma ação adicional se faz necessária para a implantação/execução das aplicações nos ambientes Tomcat e Weblogic.