Mercurial > hg > LGServices
view src/main/java/de/mpiwg/gazetteer/rest/UtilsServlet.java @ 8:8702aa85d0fb
add bookBean
author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
---|---|
date | Tue, 26 May 2015 14:29:33 +0200 |
parents | 3e62083dbcbf |
children |
line wrap: on
line source
package de.mpiwg.gazetteer.rest; import java.io.IOException; import java.io.PrintWriter; import java.util.Enumeration; import java.util.Map; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import org.json.JSONObject; import de.mpiwg.web.jsp.SessionBean; import de.mpiwg.web.jsp.utils.SessionCollectorListener; @WebServlet("/rest/utils/*") public class UtilsServlet extends HttpServlet { private static final long serialVersionUID = -8809504256505388787L; private final static Logger LOGGER = Logger.getLogger(UtilsServlet.class.getCanonicalName()); private final static int MINS_30 = 60 * 30; @Override public void init() throws ServletException { } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { try { processRequest(request, response); } catch (Exception e) { e.printStackTrace(); } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { try { processRequest(request, response); } catch (Exception e) { e.printStackTrace(); } } protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { String method = TextServlet.getLastPathComponent(request); request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); response.setContentType("application/json"); JSONObject json = new JSONObject(); //System.out.println("Own Session: " + request.getSession().getId()); if(StringUtils.equals(method, "getUser")){ String sessionId = getString(request, "sessionId"); ServletContext context = request.getSession().getServletContext(); Map<String, HttpSession> sessionCollector = (Map<String, HttpSession>) context.getAttribute(SessionCollectorListener.SESSION_COLLECTOR); if(sessionCollector.get(sessionId) != null){ HttpSession session = sessionCollector.get(sessionId); session.setMaxInactiveInterval(MINS_30); SessionBean sessionBean = (SessionBean)session.getAttribute("sessionBean"); json.put("status", "ok"); json.put("sessionId", sessionId); json.put("userName", sessionBean.getUserName()); }else{ json.put("status", "error"); json.put("message", "The session has not been found."); json.put("sessionId", sessionId); } } PrintWriter out = response.getWriter(); out.print(json.toString()); out.flush(); } public static Long getLong(HttpServletRequest request, String name){ Long value = null; try{ String s = request.getParameter(name); value = new Long(s); }catch (Exception e) { } return value; } public static String getString(HttpServletRequest request, String name){ String value = null; try{ value = request.getParameter(name); }catch (Exception e) { } return value; } }