The mood example application, located in the tut-install/examples/web/mood/ directory
, is a simple example that displays Duke’s moods at different times during the day. The example shows how to develop a simple application by using the @WebServlet
, @WebFilter
, and @WebListener
annotations to create a servlet, a listener, and a filter.
Components of the mood Example Application
The mood example application is comprised of three components: mood.web.MoodServlet
, mood.web.TimeOfDayFilter
, and mood.web.SimpleServletListener
.
MoodServlet
, the presentation layer of the application, displays Duke’s mood in a graphic, based on the time of day. The @WebServlet
annotation specifies the URL pattern:
@WebServlet("/report")
public class MoodServlet extends HttpServlet {
...
TimeOfDayFilter
sets an initialization parameter indicating that Duke is awake:
@WebFilter(filterName = "TimeOfDayFilter",
urlPatterns = {"/*"},
initParams = {
@WebInitParam(name = "mood", value = "awake")})
public class TimeOfDayFilter implements Filter {
...
The filter calls the doFilter
method, which contains a switch statement that sets Duke’s mood based on the current time.
SimpleServletListener
logs changes in the servlet’s lifecycle. The log entries appear in the server log.
Running the mood Example
You can use either NetBeans IDE or Ant to build, package, deploy, and run the mood example.
To Run the mood Example Using NetBeans IDE
- From the File menu, choose Open Project.
-In the Open Project dialog, navigate to:
tut-install/examples/web/
- Select the mood folder.
- Select the Open as Main Project check box.
- Click Open Project.
- In the Projects tab, right-click the mood project and select Build.
- Right-click the project and select Deploy.
In a web browser, open the URL http://localhost:8080/mood/report.
The URL specifies the context root, followed by the URL pattern specified for the servlet.
A web page appears with the title “Servlet MoodServlet at /mood” a text string describing Duke’s mood, and an illustrative graphic.
To Run the mood Example Using Ant
- In a terminal window, go to:
tut-install/examples/web/mood/
- Type the following command:
ant
This target builds the WAR file and copies it to the `tut-install/examples/web/mood/dist/` directory.
- Type ant deploy.
Ignore the URL shown in the deploy target output.
- In a web browser, open the URL http://localhost:8080/mood/report.
The URL specifies the context root, followed by the URL pattern.
A web page appears with the title “Servlet MoodServlet at /mood” a text string describing Duke’s mood, and an illustrative graphic.