title: Exception with Struts 2.3.15.2 org.apache.struts2.tiles.StrutsTilesListener
body: <p>I upgraded from Struts <strong>2.0.8</strong> to <strong>2.3.15.2</strong><br/></p>
  
  <p>Am getting below error when starting my apache tomcat server.</p>
  
  <p><strong>Exception sending context initialized event to listener instance of class org.apache.struts2.tiles.StrutsTilesListener</strong></p>
  
  <pre><code>**INFO: Starting Servlet Engine: Apache Tomcat/6.0.33
  Oct 16, 2013 1:03:07 PM org.apache.catalina.core.StandardContext listenerStart
  SEVERE: Exception sending context initialized event to listener instance of class 
  org.apache.struts2.tiles.StrutsTilesListener
  java.lang.NullPointerException
  at org.apache.commons.digester.Digester.getXMLReader(Digester.java:1058)
  at org.apache.commons.digester.Digester.parse(Digester.java:1887)
  at     org.apache.tiles.definition.digester.DigesterDefinitionsReader.read(DigesterDefinitionsReader.java:267)**
  </code></pre>
  
  <p><br/>
  I am using the following jar files in my WEB-INF/lib folder</p>
  
  <pre><code>commons-beanutils-1.8.0.jar
  commons-codec-1.6.jar
  commons-collections-3.1.jar
  commons-dbcp.jar
  commons-digester-2.0.jar
  commons-fileupload-1.3.jar
  commons-io-2.0.1.jar
  commons-lang-2.4.jar
  commons-logging-1.1.3.jar
  commons-pool-1.6.jar
  crimson.jar
  displaytag-1.1.jar
  displaytag-export-poi-1.1.jar
  fluent-hc-4.2.3.jar
  freemarker-2.3.19.jar
  httpclient-4.2.3.jar
  httpclient-cache-4.2.3.jar
  httpcore-4.2.2.jar
  httpmime-4.2.3.jar
  itext-2.0.4.jar
  javax.mail_1.4.0.v201005080615.jar
  jstl.jar
  log4j-12.jar
  mail.jar
  ognl-3.0.6.jar
  ojdbc6.jar
  poi-3.0.1-FINAL-20070705.jar
  standard.jar
  struts2-core-2.3.15.2.jar
  struts2-tiles3-plugin-2.3.15.2.jar
  struts2-tiles-plugin-2.3.15.2.jar
  struts-core-1.3.10.jar
  tiles-api-2.0.6.jar
  tiles-core-2.0.6.jar
  tiles-jsp-2.0.6.jar
  xwork-core-2.3.15.2.jar
  </code></pre>
  
  <p><br/>
  <strong>WEB.xml</strong></p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  
  &lt;web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"&gt;
  
  &lt;display-name&gt;My Web Application&lt;/display-name&gt;
  
  &lt;filter&gt;
      &lt;filter-name&gt;struts-cleanup&lt;/filter-name&gt;
      &lt;filter-class&gt;
          org.apache.struts2.dispatcher.ActionContextCleanUp
      &lt;/filter-class&gt;
  &lt;/filter&gt;
  
  &lt;filter-mapping&gt;
      &lt;filter-name&gt;struts-cleanup&lt;/filter-name&gt;
      &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
  &lt;/filter-mapping&gt;
  
  &lt;filter&gt;
      &lt;filter-name&gt;struts2&lt;/filter-name&gt;
      &lt;filter-class&gt;
          org.apache.struts2.dispatcher.FilterDispatcher
      &lt;/filter-class&gt;
  &lt;/filter&gt;
  &lt;filter-mapping&gt;
      &lt;filter-name&gt;struts2&lt;/filter-name&gt;
      &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
  &lt;/filter-mapping&gt;
  
  &lt;filter&gt;
      &lt;filter-name&gt;ResponseOverrideFilter&lt;/filter-name&gt;
      &lt;filter-class&gt;
          org.displaytag.filter.ResponseOverrideFilter
      &lt;/filter-class&gt;
  &lt;/filter&gt;
  
  &lt;filter-mapping&gt;
      &lt;filter-name&gt;ResponseOverrideFilter&lt;/filter-name&gt;
      &lt;url-pattern&gt;*.action&lt;/url-pattern&gt;
  &lt;/filter-mapping&gt;
  
  &lt;listener&gt;
      &lt;listener-class&gt;org.apache.struts2.tiles.StrutsTilesListener&lt;/listener-class&gt;
  &lt;/listener&gt;
  
  &lt;listener&gt;
      &lt;listener-class&gt;com.comp.ccra.listener.CCRAContextListener&lt;/listener-class&gt;
  &lt;/listener&gt;
  
  &lt;welcome-file-list&gt;
      &lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;
  &lt;/welcome-file-list&gt;
  
  &lt;/web-app&gt;
  </code></pre>
  
  <p><br/>
  <strong>STRUTS.xml</strong>
      </p>
  
  <pre><code>&lt;!DOCTYPE struts PUBLIC
  "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
  "http://struts.apache.org/dtds/struts-2.0.dtd"&gt;
  
  &lt;struts&gt;
  &lt;package name="ccra" extends="struts-default" &gt;
      &lt;interceptors&gt;
          &lt;interceptor name="login" class="com.comp.ccra.action.interceptor.LoginInterceptor"/&gt;
          &lt;interceptor-stack name="defaultLoginStack"&gt;
              &lt;interceptor-ref name="login"&gt;&lt;/interceptor-ref&gt;
              &lt;interceptor-ref name="defaultStack"&gt;&lt;/interceptor-ref&gt;
          &lt;/interceptor-stack&gt;
      &lt;/interceptors&gt; 
      &lt;!-- Make the defaultLoginStack the default one used
       for all actions unless otherwise configured. --&gt;
      &lt;default-interceptor-ref name="defaultLoginStack" /&gt;
      &lt;global-results&gt;
          &lt;result name="exception"&gt;/WEB-INF/jsp/exception.jsp&lt;/result&gt;
      &lt;/global-results&gt;       
      &lt;global-exception-mappings&gt;
          &lt;exception-mapping exception="org.apache.tomcat.dbcp.dbcp.SQLNestedException" result="exception"/&gt;
          &lt;exception-mapping exception="javax.servlet.ServletException" result="exception"/&gt;
          &lt;exception-mapping exception="java.sql.SQLException" result="exception"/&gt;
          &lt;exception-mapping exception="java.lang.Exception" result="exception"/&gt;
      &lt;/global-exception-mappings&gt;
   &lt;/package&gt;
  &lt;include file="struts-filedownload.xml" /&gt;
  &lt;include file="struts-fileupload.xml" /&gt;
  &lt;include file="struts-common.xml" /&gt;
  &lt;include file="struts-report.xml" /&gt;
  &lt;include file="struts-admin.xml" /&gt;
  &lt;/struts&gt;
  </code></pre>
  
  <p><br/>
  <strong>TILES.xml</strong>
      </p>
  
  <pre><code>&lt;!DOCTYPE tiles-definitions PUBLIC
     "-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
     "http://tiles.apache.org/dtds/tiles-config_2_0.dtd"&gt;
  
  &lt;!-- Definitions for Tiles documentation   --&gt;
  
  &lt;tiles-definitions&gt;
  
  &lt;!-- =======================================================  --&gt;
  &lt;!-- Master definition                      --&gt;
  &lt;!-- =======================================================  --&gt;
  
  &lt;definition name="basicLayout" template="/WEB-INF/tiles/layout/basicLayout.jsp"&gt;
  &lt;put-attribute name="title"  value="Call Center Connection (C3)"/&gt;
  &lt;put-attribute name="header" type="template" value="/WEB-INF/tiles/layout/header.jsp"/&gt;
  &lt;put-attribute name="navigation" type="template" value="/WEB-INF/tiles/layout/navigation.jsp"/&gt;
  &lt;put-attribute name="body" type="template" value="/WEB-INF/tiles/layout/empty.jsp"/&gt;
  &lt;put-attribute name="info" type="template" value="/WEB-INF/tiles/layout/info.jsp"/&gt;
  &lt;put-attribute name="footer" type="template" value="/WEB-INF/tiles/layout/footer.jsp"/&gt;
  &lt;/definition&gt;
  
  &lt;definition name="homePage" extends="basicLayout" &gt;
  &lt;/definition&gt;
  
  &lt;/tiles-definitions&gt;
  </code></pre>
  
  <p><br/><br/></p>
  
  <p>Please suggest if i am doing anything wrong here. Any help is greatly appreciated.
  <br/></p>