我是部署到服务器的时候出现的这个java.lang.NullPointerException的,不知道是什么原因,搞了1天了,我晕··
  刚刚接触这Sturts2.0,狂晕,我后台代码一点都没有些,请大鸟们多多指教,狂送分~~!!!!!!
2008-11-29 22:05:35 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\bin;C:\Tomcat 6.0\bin
2008-11-29 22:05:35 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2008-11-29 22:05:35 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 792 ms
2008-11-29 22:05:35 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2008-11-29 22:05:35 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.18
2008-11-29 22:05:36 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2008-11-29 22:05:36 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2008-11-29 22:05:38 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts-default.xml]
2008-11-29 22:05:38 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Unable to locate configuration files of the name struts-plugin.xml, skipping
2008-11-29 22:05:38 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts-plugin.xml]
2008-11-29 22:05:38 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Parsing configuration file [struts.xml]
2008-11-29 22:05:38 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Overriding property struts.i18n.reload - old value: false new value: true
2008-11-29 22:05:38 com.opensymphony.xwork2.util.logging.commons.CommonsLogger info
信息: Overriding property struts.configuration.xml.reload - old value: false new value: true
2008-11-29 22:05:39 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
java.lang.NullPointerException
    at com.opensymphony.xwork2.util.FileManager$FileRevision.needsReloading(FileManager.java:209)
    at com.opensymphony.xwork2.util.FileManager.fileNeedsReloading(FileManager.java:60)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.needsReload(XmlConfigurationProvider.java:325)
    at org.apache.struts2.config.StrutsXmlConfigurationProvider.needsReload(StrutsXmlConfigurationProvider.java:168)
    at com.opensymphony.xwork2.config.ConfigurationManager.conditionalReload(ConfigurationManager.java:220)
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:61)
    at org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:774)
    at org.apache.struts2.dispatcher.ng.InitOperations.initStaticContentLoader(InitOperations.java:77)
    at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:49)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2008-11-29 22:05:39 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2008-11-29 22:05:39 org.apache.catalina.core.StandardContext start
严重: Context [/Struts2_0100_Introduction] startup failed due to previous errors
2008-11-29 22:05:39 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2008-11-29 22:05:40 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2008-11-29 22:05:40 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/47  config=null
2008-11-29 22:05:40 org.apache.catalina.startup.Catalina start
信息: Server startup in 4738 ms

解决方案 »

  1.   

    我也自学struts2 这里有视频 配置视频
    01_尚学堂马士兵_Struts2_Struts2简介及学习方法简介.avi
    网址:http://www.verycd.com/topics/93279
      

  2.   

    03_尚学堂马士兵_Struts2_Struts2_HelloWorld_2.avi
      

  3.   

    web.xml怎么配的?加了struts的filter没?
      

  4.   


    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
      
      <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    </web-app>这是我的Web配置文件,我采用的是struts2.1版本的
      

  5.   

    filter换这个看看<filter>
    <filter-name>struts2</filter-name>
    <filter-class>
    org.apache.struts2.dispatcher.FilterDispatcher
    </filter-class>
    </filter>
    <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>是不是你的action里面写啥了 直接里面什么都不写 return个页面看看
      

  6.   

    呵呵……  这个是个很诡异的错误。我到struts2的官方也没有找到解决方案。还是而已一次在tomcat的官方网站看到了答案 。问题出现的原因是  tomcat6版本中 那个tomcat的安装的目录中有空格  所以导致此错误的。解决办法是 安装tomcat时不要安装默认路径安装 把它指定到一个没有空格的目录中去注意: 如:D:/apache/tomcat6/        千万不要弄成D:/test test/tomcat6   或者 D:/test/tomcat 6.0.14  记住不要tomcat 6.0.14中间有空格   
      

  7.   

    问题是tomcat安装是有空格导致的错误,把tomcat重新安装不要有文件夹都不要有空格就行,是2.1.6jar的一个bug