JTagua

Inicio » JSP/SERVLETS » Objetos implícitos » Tutorial de JSP (13): Objeto implícito response.

Tutorial de JSP (13): Objeto implícito response.

Licencia

Creative Commons License

Visitas:

  • 889.169 hits

Los objetos implícitos son una serie de objetos internos asociados a las APIs de los servlets y las páginas JSP suministrados por el contenedor de jsp, y que pueden ser usados en cualquier scriptlet o expresión, para aumentar así su funcionalidad. Entre estos objetos se encuentran:

request, Tiene un ámbito relativo a la petición, y es una instancia de la clase javax.servlet.ServletRequest. Representa la petición del cliente, proporciona entre otras informaciones, los parámetros recibidos del cliente vía formulario o url, el tipo de petición (GET/POST), etc.

response, Tiene un ámbito relativo a la pagina, y es una instancia de javax.servlet.ServletResponse. Encapsula la respuesta generada por la página JSP o servlet que será enviada al cliente en respuesta a su solicitud

session, Instancia de javax.servlet.http.HttpSession, permite acceder a la sesión para leer/escribir datos en ella. En JSP se crea siempre una sesión de trabajo por defecto, para que esto no sea así tendrá que ser específicamente indicado con el atributo session de la directiva page.

out, Instancia de javax.servlet.jsp.JspWriter, este objeto permite escribir la respuesta o parte de ella, en HTML, como resultado de la petición del cliente.

Objeto response


Los métodos más utilizados son:

  • setContentType(): se utiliza para establecer el tipo MIME y la codificación de caracteres de la página.
  • addCookie (cookie Cookie): se utiliza para agregar una nueva cookie a la respuesta.
  • setHeader (String nombre, String value):
  • sendRedirect (String): Se utiliza para reenviar la petición a otra url o servlet.
  • sendError (status_code int): Se utiliza para enviar como respuesta un error usando un estado específico.

public void setContentType(java.lang.String type)

Parámetros:

type – Una cadena que especifica el tipo MIME del contenido.

MIME, (Multipurpose Internet Mail Extensions) es un standard en Internet que determina el tipo de mensaje o contenido como respuesta a una petición HTTP vía web. Estos contenidos pueden contener textos, imágenes, audio, video y otros datos específicos de aplicaciones.

La directiva page de una página JSP especifica este valor sin embargo pudiera cambiarse dentro de un scriptlet o en un servlet, sin mas que

response.setContentType(«text/plain»);

public void addCookie( Cookie cookie)

Parámetros:

cookie – Nombre de la Cookie que se enviará al cliente.

Este método añade una cookie específica a la respuesta. Puede ser llamado en repetidas ocasiones para añadir varias cookies.

(Este método será analizado mas adelante, cuando tratemos específica las cookies y las sesiones). Es importante señalar que para enviar una cookie al cliente desde una página Jsp o un servlet, esta tarea se recomienda que ser anterior al envío de ninguna otra información html.


void setHeader (java.lang.String name, java.lang.String value)

Parametros:

name – Nombre del parámetro de cabecera.
value – Valor asignado al parámetro de cabecera.

Este método permite escribir una parte de la cabecera de la página a devolver indicando el parámetro y el valor

Ejemplo 1:

Por ejemplo, existe la posibilidad de refrescar una página de forma periódica cada cierto tiempo, esto puede hacerse con

response.setHeader(«Refresh», «5»);

con este método podemos refrescar una página cada 5 segundos aproximadamente.

Inicie una sesión del IDE de NetBeans y haga proyecto nuevo, llame a este proyecto por ejemplo, setHarder_refresh y sustituya la plantilla del index.jsp por el siguiente código,

La ejecución del la página producirá la siguiente salida,

void sendRedirect (java.lang.String location)

Parámetros:

location – URL de la redirección.

Este método se utiliza para reenviar la petición a otra url o servlet. La sintaxis es,

la sintaxis anterior, en determinados casos, aquellos en los que tuviéramos que trasladar el identificador de sesión a la nueva página de destino habría que utilizarla con otro formato. Tendríamos que utilizar,

De esta manera garantizamos que se transmita al nuevo destino el identificador de sesión.

void sendError(int sc, java.lang.String msg)

Parametros:
sc – Código de estado del error.
msg – Mensaje

Este método envía como respuesta un error usando un estado específico.

Por ejemplo, si cierta página jsp debe recibir un parámetro necesariamente el siguiente scriplet enviaría al cliente un error


Consideraciones a recordar:

Concepto, sintaxis y uso del objeto response.

Uso de los métodos del objeto response: setContentType(),  addCookie, setHeader, sendRedirect, sendError.


4 comentarios

  1. David dice:

    Hola.

    Mi pregunta seria. En el método void setHeader (java.lang.String name, java.lang.String value), se puede indicar un valor tipo:

    response.setHeader(“area”, “news″); y recogerlo luego en un objeto.

    Algunas veces la pagina de inicio no es la principal, sino una secundaria

    tipo: http://www.miweb.com/news/index.jsp y otras http://www.miweb.com/economia/index.jsp. De esta manera en cada index.jsp puedo asignar un valor propio al header y recogerlo mas adelante en un bean.

    Gracias por el tutorial.

  2. Andres Mercado Espino dice:

    Excelente el tutorial, claro, didáctico y muy centrado en el problema de la instlación gracias.

  3. JACKO dice:

    Excelente tutorial sigue asi amigo 😀

Deja un comentario