You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
2.0 KiB
57 lines
2.0 KiB
|
|
package com.zky.pub;
|
|
|
|
import java.io.IOException;
|
|
import java.lang.reflect.InvocationTargetException;
|
|
import java.lang.reflect.Method;
|
|
import java.util.Enumeration;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
import java.util.ResourceBundle;
|
|
import javax.servlet.ServletException;
|
|
import javax.servlet.http.HttpServlet;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
import org.apache.log4j.Logger;
|
|
|
|
/**
|
|
* @author dy
|
|
*
|
|
*/
|
|
public abstract class DispatchServlet extends HttpServlet {
|
|
protected static final Logger log = Logger.getLogger(DispatchServlet.class);
|
|
public void doGet(HttpServletRequest request,
|
|
HttpServletResponse response) throws ServletException, IOException {
|
|
doPost(request, response);
|
|
}
|
|
|
|
public void doPost(HttpServletRequest request, HttpServletResponse response)
|
|
throws ServletException, IOException {
|
|
String operate = request.getParameter("operate");
|
|
if (Common.isNull(operate)) {
|
|
operate = "defaultMethod";
|
|
}
|
|
try {
|
|
Class[] types = new Class[]{HttpServletRequest.class,HttpServletResponse.class};
|
|
Method method = getClass().getMethod(operate, types);
|
|
try {
|
|
method.invoke(this, new Object[]{request,response});
|
|
} catch (IllegalArgumentException e) {
|
|
e.printStackTrace();
|
|
} catch (IllegalAccessException e) {
|
|
e.printStackTrace();
|
|
} catch (InvocationTargetException e) {
|
|
//e.getTargetException().printStackTrace();
|
|
response.sendRedirect(Common.GbConvertIso("/error.jsp?errorinfo="+ e.getTargetException().toString()));
|
|
}
|
|
} catch (SecurityException e) {
|
|
e.printStackTrace();
|
|
} catch (NoSuchMethodException e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
public abstract void defaultMethod(HttpServletRequest request, HttpServletResponse response) throws Exception;
|
|
}
|