Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Aplicação não executa (erro 404)

Conclui o curso 1 basicamente sem testar as aplicações pois me deparava com o erro abaixo. Ao final do curso 1, após fazer a avaliação do curso 1, baixei o projeto pra começar a aula, entrei na Propertiers do projeto > Java Build Path: e alterei o servidor de TomCat 7 para 8.5 (versão que está instalada em minha máquina). Passado isso, após executar a aplicação (Direito no projeto > Run as > Run on Server >Selecionei o TomCat 8.5 > Selecionei o projeto que queria executar e finalizei. Após o servidor subir, me deparo com a seguinte mensagem:

HTTP Status 404 – Not Found

Type Status Report

Message /livraria/

Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

Apache Tomcat/8.5.29

Se acessado diretamente pelo link http://localhost:8080/livraria/login.xhtml (uma vez que já startada a aplicação no servidor) a pagina funciona pro projeto livraria mas não pra um novo projeto criado do 0 sem nenhum código pra dar falha de compilação.

6 respostas

Oi Tales,

Quando você acessa no browser a aplicação sem informar uma página, o JSF vai buscar por padrão uma página chamada index.xhtml. Se ele não encontrar, joga o erro 404.

Verifica no seu projeto se você tem a página index.xhtml no diretório WebContent.

Bons estudos!

Esta dificuldade pra acessar a pg está no próprio projeto da Alura que fica disponível pra ser baixado (pra quem quer iniciar a partir de ponto x a aplicação) . A aplicação pessoal que estou desenvolvendo inclusive possui uma pg index e mesmo assim enfrento esse erro de execução que informei

Oi Tales,

Na verdade para não dar esse erro você precisa fazer uma configuração no projeto.

Abra o arquivo WebContent/WEB-INF/web.xml do projeto e adicione a seguinte tag:

<welcome-file-list>
    <welcome-file>index.xhtml</welcome-file>
</welcome-file-list>

Com isso você indica ao tomcat para procurar o arquivo index.xhtml sempre que a página não for indicada no browser.

Bons estudos!

Juro que será a ultima, a tag welcome-file-list deve ficar exatamente aonde? Olhei no arquivo do Alura que estou em posse aqui (equivalente ao capitulo 5 que baixei), não contem essa tag em lugar algum

<?xml version="1.0" encoding="UTF-8"?> web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">

< display-name>ComparadorDeCelular < servlet>

< servlet-name>Faces Servlet

< servlet-class>javax.faces.webapp.FacesServlet

< load-on-startup>1

< /servlet>

< servlet-mapping>

< servlet-name>Faces Servlet

< url-pattern>*.xhtml

< /servlet-mapping>

< /web-app>

solução!

Oi Tales,

Deve ficar dentro da tag principal(<web-app>), em qualquer posição:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:web="http://java.sun.com/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    version="3.0">

<display-name>ComparadorDeCelular</display-name>
<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.xhtml</url-pattern>
</servlet-mapping>

<welcome-file-list>
    <welcome-file>index.xhtml</welcome-file>
</welcome-file-list>

</web-app>

Sempre que tiver qualquer dúvida pode postar aqui no forum, sem nenhum problema.

Estamos aqui para ajudar a todos os alunos/alunas :)

Bons estudos!

vou concertar pra ver se o erro prevalece assim que retornar da faculdade, mas grato desde já