Ayuda con Tomcat y Servlet
Saludos a todos, de antepano gracias por leer este post y espero me puedan ayudar:
Estoy realizando el ejemplo "HolaServlet" para trabajar con servlets y el servidor web Tomcat el cual genera una pagina HTML, pero aun no me funciona.
Tengo la version de Java: JDK 1.4.1
Tengo la version de Tomcat: jakarta-tomcat-4.1.12-LE-jdk14
Por el WEBSERVER cargo la pagina asi(La cual carga bien):
http://localhost:8080/HolaServlet.htm
Y en el DISCO DURO esta en la direccion:
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTHolaServlet.htm
El codigo de la pagina que carga el servlet es el siguiente:
<FORM ACTION="http://localhost:8080/servlet/HolaServlet" METHOD="post">
La clase HolaServlet.java y HolaServlet.class estan en:
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTWEB-INFclassesHolaServlet.java
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTWEB-INFclassesHolaServlet.class
Pero al pulsar el boton que me debe devolver la pagina creada por el servlet me sale el siguiente mensaje:
The requested resource (/servlet/HolaServlet) is not available.
Alguien me puede explicar q es lo que estoy haciendo mal, si es algo en el classpath o que, por favor ayundenme ya que tengo varios dias tratando de realizar este ejemplo y aun no me sale. Tengo bien configurado el Tomcat porque ya he probado cuando subo el servidor web y me carga las paginas que deseo, lo que no me esta funcionando es el request del servlet. No se si es que debo configurar algo al la variable CLASSPATH.
Gracias anticipadas:
Estoy realizando el ejemplo "HolaServlet" para trabajar con servlets y el servidor web Tomcat el cual genera una pagina HTML, pero aun no me funciona.
Tengo la version de Java: JDK 1.4.1
Tengo la version de Tomcat: jakarta-tomcat-4.1.12-LE-jdk14
Por el WEBSERVER cargo la pagina asi(La cual carga bien):
http://localhost:8080/HolaServlet.htm
Y en el DISCO DURO esta en la direccion:
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTHolaServlet.htm
El codigo de la pagina que carga el servlet es el siguiente:
<FORM ACTION="http://localhost:8080/servlet/HolaServlet" METHOD="post">
La clase HolaServlet.java y HolaServlet.class estan en:
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTWEB-INFclassesHolaServlet.java
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTWEB-INFclassesHolaServlet.class
Pero al pulsar el boton que me debe devolver la pagina creada por el servlet me sale el siguiente mensaje:
The requested resource (/servlet/HolaServlet) is not available.
Alguien me puede explicar q es lo que estoy haciendo mal, si es algo en el classpath o que, por favor ayundenme ya que tengo varios dias tratando de realizar este ejemplo y aun no me sale. Tengo bien configurado el Tomcat porque ya he probado cuando subo el servidor web y me carga las paginas que deseo, lo que no me esta funcionando es el request del servlet. No se si es que debo configurar algo al la variable CLASSPATH.
Gracias anticipadas:
Por favor ayudenme a configurarlo, segun estuve leyendo alguno post anteriores, veo q tambien tiene que ver el archivo WEB.XML, favor ayuda!!!
Esta clase la tengo en la direccion:
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTWEB-INFclassesHolaServlet.class
Tambien no sabía que había que configurar el archivo web.xml. Segun pude ver, en las etiquetas lo configure asi:
<servlet>
<servlet-name>HolaServlet </servlet-name>
<servlet-class> HolaServlet </servlet-class>
</servlet>
Y aun asi no me funciona. Lo estoy haciendo a lo plano sin ningun ID porq es que lo quiero aprender de raiz, para luego utilizarlo con netbeans.
D:jakarta-tomcat-4.1.12-LE-jdk14webappsROOTWEB-INFclassesHolaServlet.class
Tambien no sabía que había que configurar el archivo web.xml. Segun pude ver, en las etiquetas lo configure asi:
<servlet>
<servlet-name>HolaServlet </servlet-name>
<servlet-class> HolaServlet </servlet-class>
</servlet>
Y aun asi no me funciona. Lo estoy haciendo a lo plano sin ningun ID porq es que lo quiero aprender de raiz, para luego utilizarlo con netbeans.
Se me olvidaba una cosa. Es mejor que crees tu propia carpeta para guardar tu aplicación. Del anterior post sólo tienes que cambiar el nombre ROOT por el nombre de la carpeta de tu aplicación. La estructura básica de directorios es la siguiente:
+/webapps
+-----/aplicacion
+----------/WEB-INF
+---------------/classes
+---------------web.xml
+----------------/lib
+/webapps
+-----/aplicacion
+----------/WEB-INF
+---------------/classes
+---------------web.xml
+----------------/lib
Hola!!! Prueba a ver si te funciona el siguiente 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>
<!-- General description of webapp -->
<display-name>Mi servlet</display-name>
<description>Mi servlet hola</description>
<servlet>
<servlet-name>Hola</servlet-name>
<servlet-class>HolaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hola</servlet-name>
<url-pattern>/UrlHola</url-pattern>
</servlet-mapping>
</web-app>
El fichero web.xml tiene que ir en la ruta D:...webappsROOTWEB-INFweb.xml
Para hacer una petición post al servlet hay que hacerla a la siguiente URL: http://localhost:8080/ROOT/UrlHola
Si usas una versión de Tomcat menor a la 5 tienes que modificar el fichero de configuración server.xml.
Espero que te funcione
<?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>
<!-- General description of webapp -->
<display-name>Mi servlet</display-name>
<description>Mi servlet hola</description>
<servlet>
<servlet-name>Hola</servlet-name>
<servlet-class>HolaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hola</servlet-name>
<url-pattern>/UrlHola</url-pattern>
</servlet-mapping>
</web-app>
El fichero web.xml tiene que ir en la ruta D:...webappsROOTWEB-INFweb.xml
Para hacer una petición post al servlet hay que hacerla a la siguiente URL: http://localhost:8080/ROOT/UrlHola
Si usas una versión de Tomcat menor a la 5 tienes que modificar el fichero de configuración server.xml.
Espero que te funcione
