zoukankan      html  css  js  c++  java
  • struts2没有打印日志原因和No result defined for action XXXAction and result input

    在项目中调用一个action的方法的时候发生了一个错误,但是在catalina.out和配置的log4j都没有打印异常,后来在执行的action中加了logger.error("XXXXX"),也没有打印异常。

    后来发现是struts2默认的有异常拦截器ExceptionMappingInterceptor,但是是禁用的,需要自己启用

                    <interceptor-ref name="defaultStack">
                        <param name="exception.logEnabled">true</param>
                        <param name="exception.logLevel">ERROR</param>
                    </interceptor-ref>

    自定义全局异常处理的显示的页面

            <global-results>
                <result name="error">/public/error.jsp</result>
            </global-results>
    
            <global-exception-mappings>
                <exception-mapping result="error" exception="java.lang.Exception"></exception-mapping>
            </global-exception-mappings>

    在显示的页面/public/error.jsp也可以显示发生的异常信息

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@taglib uri="/struts-tags" prefix="s"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
        <div class="msgFalse" >
            <dl>
                <dt>操作失败</dt>
            </dl>
            
            <s:property value="exception"/>
            <s:property value="exceptionStack"/>
        </div>
    </body>
    </html>

    异常:No result defined for action XXXAction and result input

    1.在action里面定义了某类型的变量,然后想通过struts的自动填装把post来的表单的数据转换,如果转换类型失败就出现此种错误

    2.页面提交了同一个名字的参数多个

    比如“”
    username 123
    username 123
    permissions 123
    info 31234
    页面提交了了两个username ,而我的后台却只写了一个String username,这样同样会出错.

    3.页面中用到的控件名称与后台Action中的属性名称不一致

    这个很好理解,名称不匹配,Struts2是不会给Action中的属性赋值的

  • 相关阅读:
    中断高深吗?不!和我一起了解它!(三)
    IIS7下uploadify上传大文件出现404错误
    初来博客园
    cxf3.x +spring 3.x(4.x)+ maven 发布webservice 服务
    angularjs + fis +modJS 对于支持amd规范的组建处理(PhotoSwipe 支持,百度webUpload支持)
    elasticsearch suggest 的几种使用completion 的基本 使用
    使用github+sublime+markdwon 写文章,写博客并发布到博客园
    小互联网公司
    linux pts
    linux添加用户例如oracle
  • 原文地址:https://www.cnblogs.com/grasp/p/11168603.html
Copyright © 2011-2022 走看看