xref: /unit/test/java/request_listeners/app.java (revision 977:4f9268f27b57)
1 
2 import java.io.IOException;
3 
4 import javax.servlet.ServletException;
5 import javax.servlet.ServletRequestEvent;
6 import javax.servlet.ServletRequestListener;
7 import javax.servlet.ServletRequestAttributeEvent;
8 import javax.servlet.ServletRequestAttributeListener;
9 import javax.servlet.annotation.WebServlet;
10 import javax.servlet.annotation.WebListener;
11 import javax.servlet.http.HttpServlet;
12 import javax.servlet.http.HttpServletRequest;
13 import javax.servlet.http.HttpServletResponse;
14 
15 @WebListener
16 @WebServlet(urlPatterns = "/")
17 public class app extends HttpServlet implements
18     ServletRequestListener,
19     ServletRequestAttributeListener
20 {
21     private static String request_initialized = "";
22     private static String request_destroyed = "";
23     private static String attribute_added = "";
24     private static String attribute_removed = "";
25     private static String attribute_replaced = "";
26 
27     @Override
requestInitialized(ServletRequestEvent sre)28     public void requestInitialized(ServletRequestEvent sre)
29     {
30         HttpServletRequest r = (HttpServletRequest) sre.getServletRequest();
31 
32         request_initialized = r.getRequestURI();
33     }
34 
35     @Override
requestDestroyed(ServletRequestEvent sre)36     public void requestDestroyed(ServletRequestEvent sre)
37     {
38         HttpServletRequest r = (HttpServletRequest) sre.getServletRequest();
39 
40         request_destroyed = r.getRequestURI();
41 
42         attribute_added = "";
43         attribute_removed = "";
44         attribute_replaced = "";
45     }
46 
47     @Override
attributeAdded(ServletRequestAttributeEvent event)48     public void attributeAdded(ServletRequestAttributeEvent event)
49     {
50         attribute_added += event.getName() + "=" + event.getValue() + ";";
51     }
52 
53     @Override
attributeRemoved(ServletRequestAttributeEvent event)54     public void attributeRemoved(ServletRequestAttributeEvent event)
55     {
56         attribute_removed += event.getName() + "=" + event.getValue() + ";";
57     }
58 
59     @Override
attributeReplaced(ServletRequestAttributeEvent event)60     public void attributeReplaced(ServletRequestAttributeEvent event)
61     {
62         attribute_replaced += event.getName() + "=" + event.getValue() + ";";
63     }
64 
65     @Override
doGet(HttpServletRequest request, HttpServletResponse response)66     public void doGet(HttpServletRequest request, HttpServletResponse response)
67         throws IOException, ServletException
68     {
69         request.setAttribute("var", request.getParameter("var1"));
70         request.setAttribute("var", request.getParameter("var2"));
71         request.setAttribute("var", request.getParameter("var3"));
72 
73         response.addHeader("X-Request-Initialized", request_initialized);
74         response.addHeader("X-Request-Destroyed", request_destroyed);
75         response.addHeader("X-Attr-Added", attribute_added);
76         response.addHeader("X-Attr-Removed", attribute_removed);
77         response.addHeader("X-Attr-Replaced", attribute_replaced);
78     }
79 }
80