tomcat啓動報錯: 嚴重: createMBeans: Throwable java.lang.NullPointerException

tomcat啓動報錯如下
2014-12-17 15:27:34 org.apache.catalina.mbeans.ServerLifecycleListener createMBeans
嚴重: createMBeans: Throwable java.lang.NullPointerException
        at org.apache.catalina.mbeans.MBeanUtils.createObjectName(MBeanUtils.java:1086)
        at org.apache.catalina.mbeans.MBeanUtils.createMBean(MBeanUtils.java:504)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:570)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:366)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:535)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:498)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:656)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:628)
        at org.apache.catalina.mbeans.ServerLifecycleListener.createMBeans(ServerLifecycleListener.java:278)
        at org.apache.catalina.mbeans.ServerLifecycleListener.lifecycleEvent(ServerLifecycleListener.java:129)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:747)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
        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:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2014-12-17 15:27:34 org.apache.catalina.core.StandardService start

解決辦法:
tomcat的配置文件server.xml裏有一行配置修改如下:
<Context debug="0" crossContext="true" reloadable="true" docBase="D:\\product\\ssmm_demo\\target\\ssmm_demo"/>
改成
<Context debug="0" crossContext="true" reloadable="true" docBase="D:\\product\\ssmm_demo\\target\\ssmm_demo" path=""/>
缺一個path,加上即可。
下面順便介紹一下這個配置裏的各個屬性的含義:
path 指出你的項目訪問路徑
docBase 指出你的war包存放路徑
debug 爲設定debug的等級0提供最少的信息,9提供最多的信息
reloadable=true時 當web.xml或者class有改動的時候都會自動重新加載不需要從新啓動服務
crosscontext="true"表示配置的不同context共享一個session

知道了每個配置的含義,自然就不會遺漏掉了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章