Como saber a url completa da aplicação

5 respostas
H

Olá pessoal, gostaria de saber uma função que retorna a url da aplicação

Ex. Estou no http://localhost:8080/teste/Acao.jsp

Gostaria de saber uma função que retorne

http://localhost:8080/teste

Obrigado a todos

5 Respostas

M
request.getContextPath()

:malabarismo:

H

Essa função retorna apenas o nome do contexto. No meu exemplo retorna /teste. Mas eu queria uma função que retornasse tudo http://localhost:8080/teste

Eu nãoq queria montar a string concatenando o protocolo, ip, a porta e o contexto porque minha applicação roda em lugares diferentes. Em alguns lugares é necessário especificar a porta e em outros não. Portanto eu já queria a url completa.

Abraços

Z

request.getRequestURL()

assim faz o que vc deseja…

abraços…

H

Muito obrigado pela atenção de vcs.

Mas se eu usar o getRequestURL o sistema retorna a String que contem a URL do Servlet e não do contexto.

Ex. http://127.0.0.1:8080/teste/Teste.jsp

E pior, estou usando um servidor apache que redireciona tudo para a porta 8080 ou seja, quem acessa minha página não pode colocar a porta na URL.
Porém, quando uso o getRequestURL o sistema traz a URL com porta e tudo o que causa problemas na hora de mandar e-mails que contenham links para figuras.

Gostaria de saber se há um jeito de retornar exatamente a URL do contexto de acordo com o usuário digitou no browser.

Abraços

V

Eu sou meio novato em jsp e servlet.

Mas caso voce não queira que as pessoas vejam a porta utilizada, vc tera que mexer no arquivo web.xml da sua aplicação assim:

<web-app>

<servlet>

<servlet-name>NomedoSeuServlet</servlet-name>

<servlet-class>NomedoSeuServlet</servlet-class>

<!- agora vc vai colocar o endereço onde esta sua aplicação servlet ->

<init-param>

<param-name>NomeDoParametro</param-name>

<param-value><a href="http://localhost:8080/SuaAplica%C3%A7%C3%A3o">http://localhost:8080/SuaAplicação</a></param-value>

</init-param>

</servlet>

</web-app>

Lembre-se jsp trabalha junto com servlet.

O URL do servlet controlador que será usado no atributo HREF de um hperlink, ou o atributo action de um formulario HTML nas paginas JSP. Por exemplo, NomeDoParametro terá o seguinte valor, se vc estiver usando Tomcat na maquina local na porta 8080:

http://localhost:8080/SuaAplicação

Ao distribuir o aplicativo, substitua “localhost:8080” pelo nome de seu dominio.

Assim http://meuaplicativo/SuaAplicação

Da um pouco de trabalho, mas esconde a porta.

Criado 11 de março de 2005
Ultima resposta 11 de mar. de 2005
Respostas 5
Participantes 4