struts2 18拦截器详解(八) --- DebuggingInterceptor

DebuggingInterceptor


   该拦截器处理defaultStack第七的位置,看它的名字就知道是用来调试用的。个人觉得虽然该拦截器中代码最多,却是最没用的一个拦截器,该拦截器主要是提供了几种调试屏幕,因为如果我们要查看ActionContext或ValueStack中存储的数据的话,struts2还提供了一个<s:debug>标签,只要在页面中把该标签加上,ActionContext或ValueStack中存储的数据一目了然,也不用传递参数,所以这里就简要说一下。

   该拦截器提供的四种debug屏幕分别是:
1.XML 该种方式就是把parameters(参数),context,session,value stack中的数据以XML文件的形式输出到浏览器端
2.console 该种方式会在浏览器中弹出一个OGNL调试控制台用来以OGNL表达式的形式测试value stack中的数据
3.command 该种方式用于测试OGNL表达式并返回一个字符串
4.browser 列出指定对象的属性与属性值

   要想该拦截器生效,struts2必须处理开发模式,即在struts2配置文件中设置<constant name="struts.devMode" value="true" />,当然你用properties文件也是可以的,然后在request请求参数中设置使用哪一个debug方式,上面四种方式对应的请求参数分别为:
http://host:port/path?debug=xml、http://host:port/path?debug=console、http://host:port/path?debug=command、http://host:port/path?debug=browser

就是需要传递一个debug参数以指定使用哪一种调试方式。

   有一点需要说明的是如果你用的是command方式则不会执行Action......

你可能感兴趣的:(struts2,Interceptor)