我正在使用struts 2和convention插件,我看到了奇怪的行为。我的类的execute()没有被调用,而是调用了超类ActionSupport中的execute()。因此我的业务逻辑没有被执行。在此示例中,视图中获取的消息属性为null。当我试图放弃约定插件并在struts.xml中声明操作时,它运行正常。以下是我的代码。
public class HelloAction extends ActionSupport {
private String message;
@Override
public String execute() {
message = new Date().toString();
return SUCCESS;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
感谢任何帮助。 谢谢和问候,
M Cachia
答案 0 :(得分:1)
与给定代码无关,它在我的系统中工作正常,控制器进入execute()方法HelloAction类。我使用下面的xml配置工作正常。
<action name="test" class="com.HelloAction">
<result>/jsp/results.jsp</result>
</action>
请查看配置文件。