Java 如何从自定义Struts RequestProcessor类重定向?
我正在开发一个Struts应用程序。我只需要允许Java 如何从自定义Struts RequestProcessor类重定向?,java,jsp,jakarta-ee,model-view-controller,struts,Java,Jsp,Jakarta Ee,Model View Controller,Struts,我正在开发一个Struts应用程序。我只需要允许POST方法请求调用action类 为此,我编写了自定义的RequestProcess类并重写了processPreprocess方法: @Override protected boolean processPreprocess(HttpServletRequest request, HttpServletResponse response) { if("POST".equalsIgnoreCase(request.getM
POST
方法请求调用action类
为此,我编写了自定义的RequestProcess
类并重写了processPreprocess
方法:
@Override
protected boolean processPreprocess(HttpServletRequest request,
HttpServletResponse response) {
if("POST".equalsIgnoreCase(request.getMethod())){
return true;
}else
return false;
}
如果请求方法是GET
,我想重定向到index.jsp
页面
我不确定管理此重定向的最佳方法是什么?一种方法是,您可以编写自定义错误代码以响应覆盖的方法,例如 response.getWriter().write(“无效请求”)。
根据您的项目配置进行转换。基于这些自定义错误代码,您可以从客户端重定向到您喜欢的任何页面,即从请求的回调方法重定向到任何页面。如果您想在
GET
请求上重定向,则应执行以下操作
@Override
protected boolean processPreprocess(HttpServletRequest request,
HttpServletResponse response) {
if("GET".equalsIgnoreCase(request.getMethod())){
response.sendRedirect(request.getContextPath()+"/index.jsp");
return false;
}else
return super.processPreprocess(request, response);
}
您需要为所有操作禁用GET,还是只为特定操作禁用GET?另外,您使用的是哪个版本的Struts。请提供更多信息,以便我们可以帮助您。我正在使用Struts 1.3。是的,我只想为POST请求调用Action.execute()方法