Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
11
respostas

Projeto livraria não sobe no Wildfly

Estou usando:

  • Eclipse Oxygen
  • Java 8 (1.8.0.161)
  • Wildfly 14
  • Linux Ubuntu 18 Já configurei build path, targeted runtimes, etc. Ao adicionar o projeto livraria no servidor, ocorre o erro abaixo:

Não quero instalar Java 7, Jboss AS 7.1, daria muito trabalho, teria que alterar muito meu ambiente.

10:40:39,614 INFO  [javax.enterprise.resource.webcontainer.jsf.config] (ServerService Thread Pool -- 78) Inicializando Mojarra 2.3.5.SP2 para o contexto '/livraria'
10:40:39,808 SEVERE [javax.enterprise.resource.webcontainer.jsf.config] (ServerService Thread Pool -- 78) Critical error during deployment: : com.sun.faces.config.ConfigurationException: 
  Source Document: file:/home/user/ejb/wildfly-14.0.1.Final/standalone/deployments/livraria.war/WEB-INF/faces-config.xml
  Cause: Unable to create a new instance of 'br.com.caelum.livraria.login.Autorizador': javax.faces.FacesException: br.com.caelum.livraria.login.Autorizador from [Module "deployment.livraria.war" from Service Module Loader]
    at com.sun.faces.config.processor.AbstractConfigProcessor.createInstance(AbstractConfigProcessor.java:382)

Alguma ideia?

11 respostas

Oi Afonso,

Pela mensagem de erro o problema não é o Wildfly.

A mensagem indica um problema na sua classe Autorizador.

Dá uma conferida se no faces-config.xml do projeto o pacote da classe Autorizado foi digitado certinho.

Confira também se a classe Autorizador está com o implements PhaseListener.

Boa tarde. Já conferi os dois itens, estão OK.

Troquei o Wildfly da versão 14 para a versão 10, deu outro erro, troquei para Wildfly 11. Começou a dar erro no deploy, de duplicate resource. Consegui resolver o duplicate apagando o arquivo .failed, conforme https://stackoverflow.com/questions/28254956/duplicate-resource-wildfly.

Agora sobe o Jboss e o projeto, mas quando vou abrir o livraria no navegador, ocorre 404

Achei que eu havia resolvido do problema do duplicate, mas na verdade não.

Percebi que apagando o arquivo .failed, o Wildfly não dá erro, mas também não faz o deploy, porque não encontra o .dodeploy.

Quando limpo tudo no servidor e faço clean no server, ele gera o .dodeploy, mas ao subir o server, ocorre o erro:

0:28:32,895 ERROR [org.jboss.as.controller.management-operation] (ServerService Thread Pool -- 28) WFLYCTL0013: Operation ("add") failed - address: ([("deployment" => "standalone.v34.xml")]) - failure description: "WFLYCTL0212: Duplicate resource [(\"deployment\" => \"standalone.v34.xml\")]"
10:28:32,934 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) "WFLYCTL0193: Failed executing subsystem deployment-scanner boot operations"
10:28:32,935 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("parallel-subsystem-boot") failed - address: ([]) - failure description: "\"WFLYCTL0193: Failed executing subsystem deployment-scanner boot operations\""

Estou testando com o Wildfly 11 agora.

Fiz o seguinte: limpar o servidor, remover o projeto livraria do server (pelo add and remove), fazer o clean no projeto. Subi o servidor wildfly (sem o projeto livraria), o servidor sobe normalmente. Com o servidor no ar, faço o add do projeto livraria.

Ocorre o erro:

10:39:01,969 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) WFLYSRV0016: Replaced deployment "standalone.v4.xml" with deployment "standalone.v4.xml"
10:39:01,971 ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) WFLYDS0005: Caught exception writing deployment marker file /home/afonsoadao/ejb/wildfly-11.0.0.Final/standalone/tmp/vfs/deployment/deployment4f7e12235d42eeb8/primefaces-4.0.jar-2a96df118b6b14b7/primefaces-4.0.jar.undeployed: java.io.FileNotFoundException: /home/afonsoadao/ejb/wildfly-11.0.0.Final/standalone/tmp/vfs/deployment/deployment4f7e12235d42eeb8/primefaces-4.0.jar-2a96df118b6b14b7/primefaces-4.0.jar.undeployed (Arquivo ou diretório inexistente)
    at java.io.FileOutputStream.open0(Native Method)
    at java.io.FileOutputStream.open(FileOutputStream.java:270)

Sendo que o primefaces me parece que está no local correto.

Oi Afonso,

Muito estranho mesmo.

Você consegue compartilhar seu projeto para que eu possa dar uma olhadinha se o problema está nele ou no servidor?

Pode ser via GitHub ou Google Drive.

Compartilhei o projeto no link abaixo do Google Drive:

https://drive.google.com/file/d/1C311a-lfJIf36-rfPh56RXRDHY82Z37m/view?usp=sharing

Oi Afonso,

Parece que o problema é no seu Wildfly mesmo.

Baixei aqui o Wildfly 11(http://wildfly.org/downloads/), importei seu projeto no Eclipse, adicionei ao Wildfly o projeto e inicializei o Wildfly.

O projeto funcionou normalmente.

Tenta baixar novamente o Wildfly do site, apague o atual do Eclipse e teste novamente.

Você está usando qual versão do Eclipse e do Java? Quais os passos você usou para adicionar o projeto e subir o servidor?

Estou utilizando Eclipse Oxygen e Java 8.

Eu testei assim:

  1. Baixei o Wildfly 11 e o importei no Eclipse
  2. Baixei o seu projeto e o importei no Eclipse
  3. Adicionei o projeto ao Wildfly(botão direito -> Add and Remove...)
  4. Inicializei o Wildfly
  5. Abri no browser: http://localhost:8080/livraria/login.xhtml

Abriu a tela de login normalmente e logou com o usuario: admin/pass

solução!

Rodrigo,

Funcionou. Baixei o Wildfly 12, configurei o servidor, adicionei as libraries do Wildfly 12, no Project Facets coloquei o runtima do Wildfly 12 também. Depois somente adicionei o projeto ao servidor e subi. Não fez o "Clean" no Jboss como costumo fazer no JBoss EAP. Talvez seja essa a diferença, mas na verdade é difícil saber. O Wildfly fez o deploy do projeto livraria e subiu a aplicação.

10:17:46,516 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 37) WFLYSRV0010: Deployed "livraria.war" (runtime-name : "livraria.war")

Obrigado pela ajuda!

Oi Afonso,

Que bom que conseguiu resolver :)

Esses erros malucos e chatinhos de resolver de vez em quando acontecem :D

Bons estudos!