1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springbyexample.web.servlet.mvc.gwt;
18
19 import javax.servlet.ServletContext;
20 import javax.servlet.http.HttpServletRequest;
21 import javax.servlet.http.HttpServletResponse;
22
23 import org.slf4j.Logger;
24 import org.slf4j.LoggerFactory;
25 import org.springframework.web.context.ServletContextAware;
26 import org.springframework.web.servlet.ModelAndView;
27 import org.springframework.web.servlet.mvc.Controller;
28
29 import com.google.gwt.user.server.rpc.RemoteServiceServlet;
30
31
32
33
34
35
36 public abstract class GwtController extends RemoteServiceServlet implements Controller, ServletContextAware {
37
38 private static final long serialVersionUID = -8355008871464981285L;
39
40 final Logger logger = LoggerFactory.getLogger(GwtController.class);
41
42 private ServletContext servletContext;
43
44
45
46
47 @Override
48 public ServletContext getServletContext() {
49 return servletContext;
50 }
51
52
53
54
55 public void setServletContext(ServletContext servletContext) {
56 this.servletContext = servletContext;
57 }
58
59
60
61
62 public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
63 throws Exception {
64 try {
65 logger.debug("Processing handleRequest before.");
66
67 doPost(request, response);
68
69 logger.debug("Processing handleRequest after.");
70
71 return null;
72 } catch (Exception e) {
73 logger.error("Handle request error '" + e.getMessage() + "'", e);
74
75 return null;
76 }
77 }
78
79 }