Programación en castellano
Inicio > Tutoriales > J2EE > Servlets (Básico)
-Tutoriales

Servlets (Básico)


Inicializar un Servlet

El método init proporcionado por la clase HttpServlet inicializa el servlet y graba la inicialización. Para hacer una inicialización específica de nuestro servlet, debemos sobreescribir el método init siguiendo estas reglas.

  • Si ocurre un error que haga que el servlet no pueda manejar peticiones de cliente, lanzar una UnavailableException.

    Un jemplo de este tipo de error es la imposibilidad de establecer una conexión requerida.

  • No llamar al método System.exit.
  • Guardar el parámetro ServletConfig para que el método getServletConfig pueda devolver su valor.

    La forma más sencilla de hacer esto es hacer que el nuevo método init llame a super.init. Si grabamos el objeto nosotros mismos, debemos sobreescribir el método getServletConfig para devolver el objeto desde su nueva posición.

Aquí hay un ejemplo del método init.

    public class BookDBServlet ... {

        private BookstoreDB books;

        public void init(ServletConfig config) throws ServletException {

            // Store the ServletConfig object and log the initialization
            super.init(config);

            // Load the database to prepare for requests
            books = new BookstoreDB();
        }
        ...
    }

El método init es bastante sencillo: llama al método super.init para manejar el objeto ServletConfig y grabar la inicialización, y seleccionar un campo privado.

Si el BookDBServlet utilizará una base de datos real, en vez de similarla con un objeto, el método init sería más complejo. Aquí puedes ver el pseudo-código de como podría ser ese método init.

    public class BookDBServlet ... {

        public void init(ServletConfig config) throws ServletException {

            // Store the ServletConfig object and log the initialization
            super.init(config);

            // Open a database connection to prepare for requests
            try {
                databaseUrl = getInitParameter("databaseUrl");
                ... // get user and password parameters the same way
                connection = DriverManager.getConnection(databaseUrl,
                                                         user, password);
            } catch(Exception e) {
                throw new UnavailableException (this,
		    "Could not open a connection to the database");
            }
        }
        ...
    }

. Parámetros de Inicialización

Le segunda versión del método init llama al método getInitParameter. Este método toma el nombre del parámetro como argumento y devuelve un String que representa su valor.

(La especificación de parámetros de inicialización es específica del servidor. Por ejemplo, los parámetros son específicados como una propiedad cuando un servlet se ejecuta con el ServletRunner. La página La Utilidad servletrunner contiene una explicación general de las propiedades y cómo crearlas).

Si por alguna razón, necesitamos obtener los nombres de los parámetros, podemos utilizar el método getParameterNames.

 
Patrocinados
 

Copyright © 1999-2007 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network

red internet: musica mp3 | logos y melodias | hospedaje web linux | registro de dominios | servidores dedicados
más internet: comprar | recursos gratis | posicionamiento en buscadores | tienda virtual | gifs animados