Foros del Web » Programación para mayores de 30 ;) » Java »

Duda con Servlets

Estas en el tema de Duda con Servlets en el foro de Java en Foros del Web. Hola a todos soy nuevo en esto de los servlets, tengo instalado tomcact 7 y jdk 7. La duda es que tengo mi estructura de ...
  #1 (permalink)  
Antiguo 22/04/2012, 17:58
 
Fecha de Ingreso: agosto-2008
Mensajes: 66
Antigüedad: 16 años, 2 meses
Puntos: 1
Exclamación Duda con Servlets

Hola a todos
soy nuevo en esto de los servlets, tengo instalado tomcact 7 y jdk 7.
La duda es que tengo mi estructura de directorios
webapp\aplicacion\WEB-INF\classes el echo es que cuando el nombre de la carpeta es decir "aplicacion" no coincide con el nombre de mi servlet me sale el error 404 según he leído la ruta de la aplicación se define en el xml.
da<?xml version="1.0" encoding="UTF-8"?>

<web-app>
<servlet>
<servlet-name>aplicacion</servlet-name>
<servlet-class>aplicacion</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>aplicacion</servlet-name>
<url-pattern>/aplicacion</url-pattern>
</servlet-mapping>
</web-app>

segun se esta parte define la capeta donde se encuentra la carpeta
<url-pattern>/aplicacion</url-pattern>

pero suponiendo cambio el nombre de la carpeta y cambio el url-pattern del xml deberia aun asi poder ejecutar mi servlet sin problema pero cuando lo hago me sale el error 404 not found

alguien me podria explicar el ¿porque?
gracias saludos
  #2 (permalink)  
Antiguo 23/04/2012, 05:02
 
Fecha de Ingreso: marzo-2012
Ubicación: Madrid
Mensajes: 74
Antigüedad: 12 años, 8 meses
Puntos: 12
Respuesta: Duda con Servlets

No, no es asi.
El nombre de la carpeta de proyecto (aplicacion en tu caso) no tiene nada que ver con el nombre de tu servlet. De hecho será frecuente que una aplicacion tenga varios servlets y segun tu esquema mental solo prodria haber uno y su nombre coincidiria con el de la aplicacion.

La estructura de directorios sera mas bien:
webapps\tu_aplicacion\WEB-INF\classes\tus_servlets

Y el descriptor de despliegue:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<servlet>
<servlet-name>tu_servlet</servlet-name>
<servlet-class>tus_servlets.tu_servlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>tu_servlet</servlet-name>
<url-pattern>/url_quieras_servlet</url-pattern>
</servlet-mapping>
</web-app>


Y en el navegador llamaras al servlet con:
http://tu_servidor:tu_puerto/tu_apli...uieras_servlet
  #3 (permalink)  
Antiguo 24/04/2012, 23:04
Avatar de zero0097  
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 14 años, 6 meses
Puntos: 69
Respuesta: Duda con Servlets

La url tu se la das, es la que gustes...

ServletName = Le das el nombre que quieras
ServletCLass = Especifica la clase con todo y package del servlet al que le diste nombre

en el mapping, debes pone el mismo ServletName para hacer referencia a ese servlet y la URL queda al gusto, entonces cuando se ahga una peticion a esa URL, el descriptor ve el Servlet Name y ejecuta la clase......

La clase se puede llamar diferente que el servlet y a su vez la URL puede ser diferente.....
__________________
De nada, hay te encargo +1...

Etiquetas: servlets, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:42.