Java EE 7 SDK |
This sample application demonstrates the dynamic registration facilities for Servlets, Filters, and Listeners defined in the Servlet specification.
This sample application declares a ServletContextListener
in its deployment descriptor. The
ServletContextListener
registers a servlet with name
DynamicServlet, a Filter with name DynamicFilter,
and a ServletRequestListener in response to the
ServletContextListener.contextInitialized event.
The Servlet, Filter, and ServletRequestListener are registered using the ServletContext.addServlet, ServletContext.addFilter, and ServletContext.addListener methods respectively.
ServletContext.addServlet returns a ServletRegistration object, through which all aspects of the registered Servlet, including its mappings and initialization parameters, may be configured. Similarly, ServletContext.addFilter returns a FilterRegistration object, through which all aspects of the registered Filter, including its mappings and initialization parameters, may be configured.
The test client accesses the registered Servlet at its designated URI. The Servlet ensures that the ServletRequestListener, as well as the Filter that was mapped to the Servlet, have both been invoked by checking for the existence of ServletRequest attributes that must have been set by these entities.
This sample application demonstrates how to register the following elements in
ServletContextListener
:
Perform the following steps to build, deploy, and run the application:
app_dir
is the sample application base
directory: samples_install_dir/servlet/dynamic-registration-war
.
Change directory to app_dir.
mvn
target:
Use the command below to run this sample which is using Cargo framework:
app_dir>
mvn clean verify cargo:run
You can point Cargo to an already installed and running Glassfish server:
app_dir> mvn clean verify cargo:run -Dglassfish.home=$<glassfish_dir>
(e.g. ../glassfish4)
You can also build, deploy the sample application without Cargo:
app_dir> mvn install
app_dir> asadmin deploy ./target/<app_name>.war
http://<javaee.server.name>:<javaee.server.port>/dynamic-registration-war
HELLO WORLD! GLASSFISH
app_dir>
asadmin undeploy
<app_name>
clean
to remove the temporary directories
like /target.
app_dir> mvn
clean
Perform the following steps to build, deploy, and run the application using NetBeans IDE:
samples_install_dir/servlet/
directory, select dynamic-registration-war
, and click Open Project.dynamic-registration-war
and select Run to build, deploy, and run the project.If you have problems when running the application, refer the troubleshooting document.
Copyright © 1997-2013 Oracle and/or its affiliates. All rights reserved.