Web.xml + mapear *.java (Action Servlet) - sem usar Struts  XML
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Autor Mensagem
Shelson
JavaEvangelist
[Avatar]

Membro desde: 28/08/2003 16:52:00
Mensagens: 452
Offline

Pessoal,

Eu NÃO ESTOU USANDO STRUTS, na minha aplicação.
Estou usando o TomCat 5.0.28 e queria "amarrar" todas as pgns que terminassem em .java, com um servlet chamado ActionServlet.

Eu mapiei da seguinte forma o Web.xml:



Eu tenho 2 problemas:

Eu gostaria de que a servlet ActionServlet recebesse todas as solicitações de :

http://localhost:8080/minha_aplicacao/ActionServlet/QualquerCoisa.java


Depois de configurado corretamente o web.xml, eu gostaria de saber como eu configuro a Servlet , para receber o "QualquerCoisa.java" e dispachar para a Servlet correspondente. Eu tenho que usar filtros para isso ?

Obrigado.

This message was edited 1 time. Last update was at 30/05/2005 11:57:02

[WWW]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Então mude o seu mapeamento pra:



Só pra constar na nota, o nome do servlet não tem nada haver com o mapeamento nem com o caminho pelo qual ele é chamado.

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
Shelson
JavaEvangelist
[Avatar]

Membro desde: 28/08/2003 16:52:00
Mensagens: 452
Offline

Maurício ,

Primeiramente muito obrigado pela atenção.



Eu estou tentando fazer um esquema parecido com o Struts, mas não quero usar o mesmo.
Eu quero digitar po exemplo, FormularioX.java, e quero que o servlet ActionServlet, mande para o Servlet correspondente.

Será que eu toh viajando ???
[WWW]
Filipe Sabella
GUJ Expert

Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline

Não está viajando caso o seu objetivo seja aprendizado e não produção.

Uma maneira de fazer é:


barbada

Ainda pode fazer um lance bonitão como WebWork (o jeito do strus é porco) para popular os atributos da ação com os parâmetros da request usando Reflection.

Former LIPE.
[ICQ]
Shelson
JavaEvangelist
[Avatar]

Membro desde: 28/08/2003 16:52:00
Mensagens: 452
Offline

MAurício,

Não funcionou !!!
Eu mapiei da seguinte forma:



Quando eu digito :
http://localhost:8080/minha_aplicacao/ActionServlet

funciona

Mas se eu digitar:

http://localhost:8080/roder_web/ActionServlet/Teste.java ou
http://localhost:8080/roder_web/Teste.java

não funciona !

[WWW]
Filipe Sabella
GUJ Expert

Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline

Isso
http://localhost:8080/roder_web/
e isso
http://localhost:8080/minha_aplicacao/

são coisas completamente diferentes. Qual é o nome do contexto que declarou no server.xml?

Former LIPE.
[ICQ]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Oxe... o http://localhost:8080/roder_web/Teste.java realmente não vai funcionar, porque não começa com /ActionServlet/ mas eu não sei porque é que isso não tá funcionando.

Mude o seu mapeamento denovo pra:



E veja se funciona.

Não esqueça de atualizar o arquivo e mandar o servidor recarregar a aplicação.

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
kina
JavaEvangelist
[Avatar]

Membro desde: 04/08/2004 18:53:19
Mensagens: 340
Localização: Sampa
Offline

LIPE wrote:Não está viajando caso o seu objetivo seja aprendizado e não produção.

Uma maneira de fazer é:


barbada

Ainda pode fazer um lance bonitão como WebWork (o jeito do strus é porco) para popular os atributos da ação com os parâmetros da request usando Reflection.

Como é que o WebWork faz para popular um bean?
[MSN] [ICQ]
Shelson
JavaEvangelist
[Avatar]

Membro desde: 28/08/2003 16:52:00
Mensagens: 452
Offline

Eu declarei como minha_aplicacao ....

mas eu digitei outro nome na mensagem anterior erroneamente ...
[WWW]
Shelson
JavaEvangelist
[Avatar]

Membro desde: 28/08/2003 16:52:00
Mensagens: 452
Offline

funcionou aparentemente ....

agora vou pra segunda parte que o nosso amigo Lipe me indicou o caminho das pedras ...

Vou tentar fazer na "mão" mesmo, pois eu não conheço o WebWork ...

A não ser que o Lipe tenha um manual prático pra nos ceder ... hehehehe ...

Valeu a todos !
[WWW]
Filipe Sabella
GUJ Expert

Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline

Estude Reflection (tem um tutorial introdutório aqui no GUJ) e dê uma olhadinha no commons bean-utils.

Former LIPE.
[ICQ]
Mike Cristian
Smalltalk
[Avatar]

Membro desde: 06/07/2011 18:05:04
Mensagens: 2
Offline

Olá pessoal!
Sou o novo membro do GUJ.
Meu nome é MIKE e estudo SI.

Bom estou com uma dúvida.

Estou estudando JAVA WEB. Não estou conseguindo mapear minha aplicação.

onde eu coloco esse código abaixo?

<servlet>
<servlet-name>servletOiMundo</servlet-name>
<servlet-class>br.com.caelum.servlet.OiMundo</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>servletOiMundo</servlet-name>
<url-pattern>/oi</url-pattern>
</servlet-mapping>

É no web.xml???
Em que lugar?
porque o java criar automaticamente o arquivo com vários códigos.

Me ajudem por favor.
Obrigado.

TECNOLOGIA EM DESENVOLVIMENTO
Rodivan
Entusiasta Java
[Avatar]

Membro desde: 25/04/2010 22:24:52
Mensagens: 23
Offline

Bom Dia Mike Cristian, abaixo segue o link com uma introdução sobre sua dúvida
http://www.guj.com.br/articles/9
[MSN]
moraispaulo
What is classpath?

Membro desde: 11/08/2011 14:26:12
Mensagens: 9
Localização: São José dos Campos
Offline

Na hora que eu mando compilar aparece isso para mim.


WARNING: DPL8007: Unsupported deployment descriptors element display-name value Teste
WARNING: DPL8007: Unsupported deployment descriptors element welcome-file value index.jsp
WARNING: DPL8007: Unsupported deployment descriptors element servlet-class value controller.ControlClienteServlet
WARNING: DPL8007: Unsupported deployment descriptors element servlet-name value CadClienteServlet
WARNING: DPL8007: Unsupported deployment descriptors element url-pattern value /ControlClienteServlet

Meu xml está assim. E eu estou usando o glassfish

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app error-url="">
<display-name>Teste</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<servlet>
<servlet-name>CadClienteServlet</servlet-name>
<servlet-class>controller.ControlClienteServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>CadClienteServlet</servlet-name>
<url-pattern>/ControlClienteServlet</url-pattern>
</servlet-mapping>


</glassfish-web-app>


Onde estou errando? A jdk 7 que estou usando
[WWW] [MSN]
 
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Ir para:   
Powered by JForum 2.1.8 © JForum Team