El contexto de servlet también está disponible cuando implementa ServletContextListener. Esto facilita la carga de parámetros como la cadena de conexión en el arranque. Puede definir la clase de oyente en web.xml que le carga ServletContextListener al inicio de su aplicación web.
Dentro del archivo web.xml, agregue las etiquetas <listener>
y <context-param>
. El <listener>
especifica la clase que se llama al inicio. La etiqueta <context-param>
define el parámetro de contexto que está disponible en su aplicación web.
En primer lugar, incluye los <listener>
<context-param>
y etiquetas en el archivo web.xml:
<web-app>
<!-- ... -->
<listener>
<listener-class>com.your.package.ServletContextClass</listener-class>
</listener>
<!-- Init parameters for db connection -->
<context-param>
<param-name>your_param</param-name>
<param-value>your_param_value</param-value>
</context-param>
<!-- ... -->
</web-app>
crear ahora la clase de contexto de servlet de la siguiente manera.
public class ServletContextClass implements ServletContextListener
{
public void contextInitialized(ServletContextEvent arg0)
{
//use the ServletContextEvent argument to access the
//parameter from the context-param
String my_param = arg0.getServletContext().getInitParameter("your_param");
}//end contextInitialized method
@Override
public void contextDestroyed(ServletContextEvent arg0)
{ }//end constextDestroyed method
}
Ahora puede elegir la variable estática para asignar el parámetro que ha leído. Esto le permite leer el parámetro una vez al inicio, y reutilizar muchas veces a través de la variable estática que le asigna.
qué clase javax.ws.rs uso como manejador de servlets? – leeeroy
En realidad no te estoy entendiendo por esto. Ya tiene una clase que maneja las solicitudes HTTP GET. Por favor, elabore más lo que quiere decir con Servlet Handler. Aclamaciones. –
Un contenedor de servlet necesita un servlet para manejar las solicitudes. com.sun.ws.rest.spi.container.servlet.ServletContainer se encarga de manejar las solicitudes y enviarlas a mis clases anotadas. Usted implica que no debería usar las clases com.sun. *, Entonces ¿qué debería usar? – leeeroy