Struts2 debug = browser不捕获动作类变量中的url参数?

时间:2011-03-01 16:52:16

标签: java tomcat struts2 ognl xwork

我有一个非常简单的动作类,其中包含一个成员变量“data”。当我提交普通网址时,它会在tomcat控制台中显示值:Test action data=hello

public class ActionTest extends ActionSupport {

private static final long serialVersionUID = -2606731098320589210L;
private String data;

public String getData() {
    return data;
}

public void setData(String data) {
    this.data = data;
}

@Action(value = "mytestaction")
public String execute() {
    System.out.println("Test action data="+data);
    return SUCCESS;
}
}

如果我使用调试模式,例如使用 mytestaction.action修改网址?data = hello& debug = browser 在tomcat控制台中,它显示Test action data=null。但它在参数中显示了浏览器ognl上下文树中的值。但是,当扩展Action类时,相同的data为null。

在其他调试模式中,如 debug = xml ,它将显示为

<actionErrors /> 
<actionMessages /> 
<class>class com.ycs.fe.actions.ActionTest</class> 
<data>hello</data> 
<errorMessages /> 
<errors /> 
<fieldErrors /> 

并在 debug = console 模式下,如果我打印OGNL #action.data =>shows hello#parameters.data[0] => shows hello

这是一个真正的错误吗?还是我错过了什么?我尝试使用约定以及struts.xml中的映射,但两者都有相同的结果。

0 个答案:

没有答案