Java 仅将Struts2操作限制为Post方法

Java 仅将Struts2操作限制为Post方法,java,struts2,Java,Struts2,如何将Struts2操作限制为仅适用于Post方法?为什么要这样做 撇开这一点不谈,你可以这样做 //Following has not been tested package com.quaternion.interceptor; import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.A

如何将Struts2操作限制为仅适用于
Post
方法?

为什么要这样做

撇开这一点不谈,你可以这样做

//Following has not been tested
package com.quaternion.interceptor;

import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;

public class PostOnlyInterceptor  extends AbstractInterceptor {
    @Override
    public String intercept(ActionInvocation ai) throws Exception {
        HttpServletRequest request = ServletActionContext.getRequest();
        if (!request.getMethod().equals("POST")){
            return Action.ERROR;
        }
        return ai.invoke();
    }  
}
然后为特定包构建一个拦截器堆栈,并将您的操作放在该包中,或者使用ParentPackage注释将您的操作与该包相关联