Java Struts2:我的静态参数被get方法覆盖

Java Struts2:我的静态参数被get方法覆盖,java,struts2,Java,Struts2,我有一个按校园划分的页面。基本上是相同的页面,但我会根据校园情况更改信息 参数“校园”,设置谁是当前使用的校园 这很好,例如,如果我访问localhost/page/campus1/index.action,getCampus方法返回“campus1”,这是预期的 但是如果我访问localhost/page/campus1/index.action?campus=campus2,getCampus()方法返回“campus2”;我尽量避免这种行为。我希望{campus}param是最重要的,没有

我有一个按校园划分的页面。基本上是相同的页面,但我会根据校园情况更改信息

参数“校园”,设置谁是当前使用的校园

这很好,例如,如果我访问localhost/page/campus1/index.action,getCampus方法返回“campus1”,这是预期的

但是如果我访问localhost/page/campus1/index.action?campus=campus2,getCampus()方法返回“campus2”;我尽量避免这种行为。我希望{campus}param是最重要的,没有人能超越他

我使用“param”拦截器中的“excludeParams”来排除“campus”,但现在getCampus返回null

如何从struts2读取的参数中排除某些get/post方法

可以避免静态参数被其他参数覆盖吗

编辑: 我有一个拦截器,它会说选择的校园是否有效

如果有人在url中输入了一个真实的校园,但是使用了一个错误的校园放置了一个“get方法”,那么测试将通过,但是所有的信息都是错误的

我的行动

@Action(value="{campus}/index",
    results={
        @Result(name=SUCCESS,location="/jsp/campusindex.jsp"),
    }
)
public String campusIndex(){
    return SUCCESS;
}
public void setCampus(String campus){
    this.campus=campus;
}
public String getCampus(){
    return this.campus;
}
我的jsp

<%@ taglib prefix="s" uri="/struts-tags"%>
<s:label name="campus"/>

有点像第二十二条军规,但这到底有什么关系呢?如果有人想用GET参数创建一个URL,他们可以用“inline”模式匹配的参数做同样的事情,所以显然这不是一个安全问题。我的问题是验证校园参数。我在拦截器中接收到与动作不同的校园值。
 public String intercept(ActionInvocation actionInvocation) throws Exception {
     ActionConfig config = actionInvocation.getProxy().getConfig();
    String campus = config.getParams().get("campus");
    try{
        Campus.isaValidCampus(campus);
    } catch(Exception e){
        return "error404";
    }
    return actionInvocation.invoke();
}