[Servlet ] URL inicial - HTTP Status 404 - /gerenciador

4 respostas
rafaspimenta

Pessoal, bom dia.

Quando rodo minha aplicação web via tomcat, a URL inicial é http://localhost:8080/ ou http://localhost:8080/index.html.

Eu gostaria que minha URL inicial fosse http://localhost:8080/gerenciador/ ou http://localhost:8080/gerenciador/index.html.

No caso, gerenciador é o nome da minha aplicação, por esse motivo gostaria que ela fosse minha URL inicial.
O que devo fazer para que isso ocorra?

Segue meu web.xml

<?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"
         id="WebApp_ID" version="3.0">
    <display-name>gerenciador</display-name>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>
</web-app>

A estrutura do meu projeto é essa:

Obrigado!

4 Respostas

Felipe_Miranda

Boa noite rafaspimenta,

todo servidor-web tem um arquivo a ser executado quando uma requisição é feita, existe um arquivo responsável por essa configuração chama-se htacess, que tem no seu parâmetro DirectoryIndex, algo como:

DirectoryIndex index.html index.php index.htm default.htm,

quando realiza uma requição ao seu site, como você citou, Http://localhost:8080 é o mesmo que requisitar http://localhost:8080/index.html, pois na sua aplicação a única página index, é index.html, não havendo, index.htm, default.htm, etc.

Então para conseguir o que desejas, você pode alterar esse arquivo, ou apenas efetuar um redirecionamento ao cair na página index.html do seu site, quando o usuário digitar http://localhost:8080 ou http://localhost:8080/index.html, irá cair ná página raiz do seu projeto web, configurado no DirectoryIndex do htacess, feito isso efetue um redirecionamento para a outra página index do seu projeto, dentro do diretório gerenciador, ficando assim, http://localhost:8080/gerenciador/index.html, por que toda vez que o usuário acessar http://localhost:8080/ ou http://localhost:8080/index.html será redirecionado para http://localhost:8080/gerenciador/index.html.

C

É isso mesmo que o Felipe_Mirando mencionou rafaspimenta.
da uma olhada no seu folder index.html e no seu web.xml

rafaspimenta

Obrigado pelo feedback pessoal!

Minha dúvida é: Essa alteração no arquivo .htaccess irá se aplicar para todos meus projetos ou eu tenho que criar e alterar esse arquivo toda vez que criar um novo projeto web?

A tempo, eu achei nas configurações do meu projeto (estou utilizando a IDE IntelliJ) um parâmetro chamado “Path Relative to Deployment Root”, segue imagem:

Ela vem por padrão com “/”, porém se eu mudo para “/gerenciador”, funciona como desejo, desde que eu altere manualmente no browser a url de http://localhost:8080 para http://localhost:8080/gerenciador

Mas, minha intenção é que seja automático, quando rodar meu projeto ele ja carregue esse página inicial.

Obrigado.

Felipe_Miranda

rafaspimenta,

faça um teste de redirecionamento, um script simples, não altere o htacess nesse momento, tente algo simples como:

<script>
        window.location="http://localhost:8080/gerenciador/index.html"; 
</script>
Criado 24 de junho de 2016
Ultima resposta 28 de jun. de 2016
Respostas 4
Participantes 3