struts2环境配置是出现No result defined for action *** and result input”的错误信息

这几天,看了很多配置struts2的配置环境教程,总的来说其实都是差不多的。

步骤大概如下:

①创建一个web项目


②搭建struts2运行环境(即导入struts2的jar包)


③在web.xml文件中设置核心控制器

(即配置struts2的过滤器,注意:旧版本的教程中的<filter-class>是引用了org.apache.struts2.dispatcher.FilterDispatcher这个类,但是我们现在用的因为是新版本的包,所以要把这个引用类改为org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter)


④创建一个继承ActionSupport的动作类(这个类需要注意的是动作被访问后默认执行execute()方法:public String execute() throws Exception{...} 该方法的返回值通常使用INPUT 、SUCCESS、LOGIN、NONE和ERROR)


⑤创建结果显示JSP文件,保存目录为WebRoot(即网页页面)


创建struts.xml,在其中定义动作包、动作等内容,保存目录为src。


⑦部署并运行,finish。


一般情况下,网上的教程都是大概这样的步骤。但是,最近我发现了一个问题:

在第6步配置文件时,这个配置文件有个细小的问题,就是关于result的name值问题,如果我们的name的值是写成动作类的返回值的话,等你一运行后,系统就会报错,并提示“No result defined for action com.struts.LoginAction and result input”的错误信息;

于是,我查了API,发现这个,终于可以解释为什么会出现错误了。就是因为  动作处理客户端请求后会返回一个字符串(即INPUT等大写字母的字符串),每个字符串对应一个逻辑视图(小写字母的) ,而result的name值只能填写字符串对应的逻辑视图名称,所以千万不要把动作类的返回值和result的name值当成一样。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值