【发布时间】:2021-07-01 04:01:34
【问题描述】:
我在Preparable接口的prepare方法中得到null作为URL参数名称,而参数是在URL中设置的。
我正在尝试访问的 URL,
http://localhost:8080/basic-struts/registerInput.action?userid=1
public class Register extends ActionSupport implements Preparable {
private String userid;
public void prepare() throws Exception {
// Call the service, load data,
// every time even if validation fails
System.out.println("----------");
System.out.println(userid); //<-------null
System.out.println("----------");
}
public String getUserId() {
return userid;
}
public void setUserId(String userid) {
this.userid = userid;
}
}
注意:- 我在日志中得到一些错误,如下所示,
2021-07-01 09:28:53,929 错误 [qtp1182469998-22] interceptor.ParametersInterceptor (ParametersInterceptor.java:238) - 开发人员通知(将 struts.devMode 设置为 false 以禁用此消息): 在“class org.apache.struts.register.action.Register”上设置“userid”时出现意外异常:错误设置表达式“userid”的值为 ['1', ]
【问题讨论】:
-
如果您使用默认拦截器堆栈,请注意它们的运行顺序。见stackoverflow.com/q/30364532/438992。
标签: java parameters struts2 ognl