package com.oreilly.demo.android.pa.clientserver.server.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.oreilly.demo.android.pa.clientserver.server.ServerStatic; public abstract class BaseServlet extends HttpServlet implements ISHttpServletType { private static final long serialVersionUID = 5785749997571010650L; public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException { doResponse(req, res); } public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException { doResponse(req, res); } protected void doResponse(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException { try { response(req, res); } catch (Throwable t) { ServerStatic.debug(t); res.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); } } protected String getUrl(HttpServletRequest req) { StringBuffer reqUrl = req.getRequestURL(); String queryString = req.getQueryString(); if (queryString != null) { reqUrl.append("?"); reqUrl.append(queryString); } return reqUrl.toString(); } abstract protected void response(HttpServletRequest req, HttpServletResponse res); }