最近在利用struts2拦截器实现文字过滤功能是出现了如下异常:

     

java.lang.NullPointerException
 dr.interceptor.MyInterceptor.intercept(MyInterceptor.java:19)
 com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
 org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
 org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:468)
 org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
经过查询才知道,原来是因为在struts.xml配置自己定义的拦截器将默认的拦截器栈defaultStack覆盖,错误代码如下:


 
 
  
 

 
  
  
   /success.jsp
  
  
  
 

 

解决的办法是在struts.xml文件中配置defaultStack,具体代码如下:


 
 
  
 

 
  
  
   /success.jsp
  
  

  

  
 
 

并且配置defaultStack的代码必须放在配置自定义拦截器(myInterceptor)前面。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/duanruihaoren/archive/2011/01/01/6111788.aspx