jump to navigation

Mi primer servlet Diciembre 27, 2007

Publicado por lineadecodigo en : Java , trackback

En este ejemplo vamos a desarrollar nuestro primer servlet, el cual nos de como respuesta la frase "Este es mi primer Servlet".

Crear el Servlet

La clase Java que implemente el servlet deberá de extender la clase javax.servlet.HttpServlet.

  1. public class MiPrimerServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
  2. ...
  3. }

Dentro de esta clase tenemos que codificar, al menos, un método. El método doGet. Este método es el que se ejecuta cuando el servlet recibe una petición del tipo GET (las más normales en Internet).

public class MiPrimerServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	...
	}
}

El método doGet recibe dos parámetros: HttpServletRequest y HttpServletResponse. Estos dos parámetros representan el stream de petición y el stream de respuesta. Y ambos llevan los datos intrínsecos a la petición o respuesta.

Por ejemplo, si la petición viene con parámetros, estos los encontraremos en el objeto HttpServletRequest. De igual manera, si queremos establecer el tipo de contenido de respuesta, lo podremos hacer manipulando el objeto HttpServletResponse.

Para nuestro ejemplo de Mi primer servlet, vamos a centrarnos en el objeto HttpServletResponse. Y es que lo que vamos a realizar será un volcado de datos sobre el flujo de salida.

Lo primero que haremos será el definir una clase PrintWriter a la que asociar el flujo de salida.

  1. out = response.getWriter();

Una vez establecida esta relación, lo primero que haremos será indicar el tipo de contenido que queremos volcar. En este caso, será una página web. Es por ello que el contenido será “text/html”. En otros casos podremos devolver otros mime-types como “images/jpeg” para las imágenes JPEG o “application/x-gzip” para los ficheros ZIP.

response.setContentType("text/html");

Ahora solo nos quedará ir invocando al método .println con el texto que conforme la página web.

out.println("<html>");
out.println("<head><title>Mi Primer Servlet </title></head>");
out.println("<body>");
out.println("<h1>Este es mi Primer Servlet</h1>");
out.println("</body></html>");

Como se puede ver en el código, se vuelcan todas las etiquetas que conforman la página web HTML, BODY, TITLE,… y nuestro texto.

Configurar el descriptor de despliegue

Una vez desarrollado y compilado nuestro servlet, tendremos que configurar el descriptor de despliegue. Este es el fichero web.xml. Dicho fichero indicará los servlets que hay desplegados en nuestra aplicación web y bajo que URL van a atender las peticiones.

Tendremos que definir dos etiquetas. La primera es la etiqueta servlet. Esta etiqueta sirve para definir el servlet. Tiene las siguientes etiquetas anidadas:

<servlet>
  <description>Mi primer Servlet</description>
  <display-name>	MiPrimerServlet</display-name>
  <servlet-name>MiPrimerServlet</servlet-name>
  <servlet-class> aulambra.com.lineadecodigo.j2ee.servlets.MiPrimerServlet </servlet-class>
</servlet>

Una vez definido el servlet, solo nos quedará realizar la asociación entre la URL que atenderá las peticiones del servlet y el servlet definido. Esto lo hacemos mediante la etiqueta servlet-mapping.

En ella encontramos dos etiquetas anidadas:

<servlet-mapping>
  <servlet-name>MiPrimerServlet</servlet-name>
  <url-pattern>/MiPrimerServlet</url-pattern>
</servlet-mapping>

De esta manera, una vez desplegada la aplicación en un contenedor web, podremos acceder al servlet de la siguiente manera:

http://servidor:8080/nombre_app_web/MiPrimerServlet


Visualizar el ejemplo
| Descargar el código

Articulos Similares:

Enviar entrada por email Enviar entrada por email | Imprimir Imprimir | 8537 visitas

1 Star2 Stars3 Stars4 Stars5 Stars (2 votos, media: 4.50 de 5)
Loading ... Loading ...

Comentarios»

Todavía no hay comentarios. ¿Quieres ser el primero?


Imagen CAPTCHA CAPTCHA Audio
Refrescar imagen