1

我有一个非常简单的动作类,它有一个成员变量“数据”。当我提交正常的网址时,它会在 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;
}
}

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

在debug=xml等其他调试模式下,它是

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

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

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

4

0 回答 0