Alguém sabe me dizer se o Spring Boot Admin na versão 2.1.1 funciona se as aplicações (server e client) estiverem em um servidor JBoss. Digo isso porque testei ambas as aplicações no Tomcat (servidor embutido do Spring Boot) e funcionou, porém quando coloquei as aplicações em um servidor externo (JBoss EAP 7.1) parou de funcionar e me retornou a seguinte exceção ao tentar o deploy através do Maven:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:16 min
[INFO] Finished at: 2019-01-04T09:52:43-02:00
[INFO] Final Memory: 43M/400M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.wildfly.plugins:wildfly-maven-plugin:1.2.2.Final:deploy (default-cli) on project prjSgeBackend: Failed to execute goal deploy: {“WFLYCTL0062: A operação de composição falhou e foi revertida. Segue abaixo as etapas que falharam:” => {“Operação step-1” => {“WFLYCTL0080: Falha de serviços” => {“jboss.undertow.deployment.default-server.default-host./prj-sge-backend” => “java.lang.RuntimeException: java.lang.IllegalStateException: Error processing condition on de.codecentric.boot.admin.client.config.SpringBootAdminClientAutoConfiguration.registrator
[ERROR] Caused by: java.lang.RuntimeException: java.lang.IllegalStateException: Error processing condition on de.codecentric.boot.admin.client.config.SpringBootAdminClientAutoConfiguration.registrator
[ERROR] Caused by: java.lang.IllegalStateException: Error processing condition on de.codecentric.boot.admin.client.config.SpringBootAdminClientAutoConfiguration.registrator
[ERROR] Caused by: java.lang.IllegalStateException: Failed to introspect Class [de.codecentric.boot.admin.client.config.SpringBootAdminClientAutoConfiguration$ServletConfiguration] from ClassLoader [ModuleClassLoader for Module “deployment.prj-sge-backend.war” from Service Module Loader]
[ERROR] Caused by: java.lang.NoClassDefFoundError: org/springframework/boot/autoconfigure/web/servlet/DispatcherServletPath
[ERROR] Caused by: java.lang.ClassNotFoundException: org.springframework.boot.autoconfigure.web.servlet.DispatcherServletPath from [Module “deployment.prj-sge-backend.war” from Service Module Loader]”}}}}
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Funciona, eu estou utilizando o wildfly 3.0.6 Final, mas o problema que você encontrou é sobre configuração do springboot, você precisa fazer configuração manual do servlet, caso contrário não funcionara, como eu estava sem tempo não terminei de ler sobre o assunto e mudei para o wildfly que funciona com o autoconfigure.
Caso queira tentar fazer configuração, bora lá…é só postar.
V
Villagram1 like
Posta seu pom.xml e a classe com o main que fica mais fácil de ajudar.
O DispatcherServletPath foi adicionado ao Spring Boot 2.0.4, portanto, provavelmente a incompatibilidade de versão é a causa raiz desse problema. Porém a configuração ainda é necessária.
Aqui comigo funcionou normalmente.
Espero que consiga resolver seu problema.
M
michaeldasilvases2 likes
Opa.
Esse eh o problema o Spring esta querendo se registrar no ServletContainer, mas como JBoss eh um servidor de aplicação, vc terá que fazer alguns workarounds para funcionar. Agora sinceramente não eh uma boa ideia utilizar Spring com servidores de aplicação, pois a experiência diz que mais cedo ou mais tarde vc terá problemas de compatibilidade e conflito.
\o
C
cristianlpereira
Isso foi uma exigência de um cliente de grande porte e pouco flexível.