Un Servlet HTTP maneja peticiones del cliente a trav�s de su m�todo service. Este m�todo soporta peticiones est�ndard de cliente HTTP despachando cada petici�n a un m�todo designado para manejar esa petici�n. Por ejemplo, el m�todo service llama al m�todo doGet mostrado anteriormente en el ejemplo del servlet sencillo.
�Peticiones y Respuestas
Esta p�gina explica la utilizaci�n de los objetos que representan peticiones de clientes (un objeto HttpServletRequest) y las respuestas del servlet (un objeto HttpServletResponse). Estos objetos se proporcionan al m�todo service y a los m�todos que service llama para menejar peticiones HTTP.
�Manejar Peticiones GET y POST
Los m�todos en los que delega el m�todo service las peticiones HTTP, incluyen
- doGet, para manejar GET, GET condicional, y peticiones de HEAD
- doPost, para menajar peticiones POST
- doPut, para manejar peticiones PUT
- doDelete, para manejar peticiones DELETE
Por defecto, estos m�todos devuelven un error BAD_REQUEST (400). Nuestro servlet deber�a sobrescribir el m�todo o m�todos dise�ados para manejar las interacciones HTTP que soporta. Esta secci�n muestra c�mo implementar m�todo para manejar las peticiones HTTP m�s comunes: GET y POST.
El m�todo service de HttpServlet tambi�n llama al m�todo doOptions cuando el servlet recibe una petici�n OPTIONS, y a doTrace cuando recibe una petici�n TRACE. La implementaci�n por defecto de doOptions determina autom�ticamente que opciones HTTP son soportadas y devuelve esa informaci�n. La implementaci�n por defecto de doTrace realiza una respuesta con un mensaje que contiene todas las cabeceras enviadas en la petici�n trace. Estos m�todos no se sobreescriben normalmente.
�Problemas con los Threads
Los Servlets HTTP normalmente pueden servir a m�ltiples clientes concurrentes. Si los m�todos de nuestro Servlet no funcionan con clientes que acceden a recursos compartidos, deberemos.
- Sincronizar el acceso a estos recursos, o
- Crear un servlet que maneje s�lo una petici�n de cliente a la vez.
Esta lecci�n te muestra c�mo implementar la segunda opci�n. (la primera est� cubierta en la p�gina Threads de Control.)
�Descripciones de Servlets
Adem�s de manejar peticiones de cliente HTTP, los servlets tambi�n son llamados para suministrar descripci�n de ellos mismos. Esta p�gina muestra como proporcionar una descripci�n sobreescribiendo el m�todo getServletInfo, que suministra una descripci�n del servlet.