2012-07-08 210 views
0

我正在关注Tomcat 7的一本书,并且我试图将PersistentManager与FileStore一起用于会话持久性。尝试在Tomcat中使用PersistentManager时获取404错误

我有一个Tomcat 7服务器在Eclipse中运行,所以我去了它的文件夹中的项目资源管理器和位于那里的context.xml文件我插入下面的文本

<Manager> 
     className="org.apache.catalina.session.PersistentManager" 
     saveOnRestart="true" 
     maxActiveSessions="-1" 
     minIdleSwap="-1" 
     maxIdleSwap="-1" 
     maxIdleBackup="-1" 
     <Store className="org.apache.catalina.session.FileStore" directory="/mypath/mydir" /> 
</Manager> 

正如书上说我必须将Manager设置在context.xml文件中,并且当我通过Eclipse运行Tomcat时,我认为这是要使用的context.xml文件。无论如何,当我插入该文本并重新启动Tomcat,当我尝试访问我的本地主机网页时,我得到了一个404。当我点击重新启动时,以下是控制台的输出 -

08-Jul-2012 18:59:32 org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\Program Files\ActiveState Komodo Edit 6\;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\Windows Live\Shared;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files\Microsoft Network Monitor 3\;C:\Program Files\MATLAB\R2011a\runtime\win32;C:\Program Files\MATLAB\R2011a\bin;C:\Program Files\Nmap;C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin;C:\Program Files\Steam;C:\ProgramData\Propeople\Drush\;C:\Program Files\Propeople\Drush\GnuWin32\bin;C:\Program Files\Propeople\Drush\Php;C:\bf_scripts;C:\Program Files\Java\jdk1.6.0_30\bin;C:\apache\ant\bin;C:\Users\Brian\Eclipse\eclipse tomcat;;. 
08-Jul-2012 18:59:32 org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:chapter5' did not find a matching property. 
08-Jul-2012 18:59:32 org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["http-bio-8080"] 
08-Jul-2012 18:59:32 org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["ajp-bio-8009"] 
08-Jul-2012 18:59:32 org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 376 ms 
08-Jul-2012 18:59:32 org.apache.catalina.core.StandardService startInternal 
INFO: Starting service Catalina 
08-Jul-2012 18:59:32 org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/7.0.27 
08-Jul-2012 18:59:32 org.apache.tomcat.util.digester.Digester endElement 
SEVERE: End event threw exception 
java.lang.NoSuchMethodException: org.apache.catalina.session.StandardManager setStore 
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:855) 
    at org.apache.tomcat.util.digester.SetNextRule.end(SetNextRule.java:201) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1051) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537) 
    at org.apache.catalina.startup.ContextConfig.processContextConfig(ContextConfig.java:612) 
    at org.apache.catalina.startup.ContextConfig.contextConfig(ContextConfig.java:556) 
    at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:814) 
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:363) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
    at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:110) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556) 
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
08-Jul-2012 18:59:32 org.apache.catalina.startup.ContextConfig processContextConfig 
SEVERE: Parse error in context.xml for 
java.lang.NoSuchMethodException: org.apache.catalina.session.StandardManager setStore 
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2687) 
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2719) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1054) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537) 
    at org.apache.catalina.startup.ContextConfig.processContextConfig(ContextConfig.java:612) 
    at org.apache.catalina.startup.ContextConfig.contextConfig(ContextConfig.java:556) 
    at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:814) 
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:363) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
    at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:110) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556) 
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NoSuchMethodException: org.apache.catalina.session.StandardManager setStore 
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:855) 
    at org.apache.tomcat.util.digester.SetNextRule.end(SetNextRule.java:201) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1051) 
    ... 28 more 
08-Jul-2012 18:59:32 org.apache.catalina.startup.ContextConfig processContextConfig 
SEVERE: Occurred at line 41 column 87 
08-Jul-2012 18:59:32 org.apache.catalina.startup.ContextConfig configureStart 
SEVERE: Marking this application unavailable due to previous error(s) 
08-Jul-2012 18:59:32 org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error getConfigured 
08-Jul-2012 18:59:32 org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [] startup failed due to previous errors 
08-Jul-2012 18:59:32 org.apache.tomcat.util.digester.Digester endElement 
SEVERE: End event threw exception 
java.lang.NoSuchMethodException: org.apache.catalina.session.StandardManager setStore 
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:855) 
    at org.apache.tomcat.util.digester.SetNextRule.end(SetNextRule.java:201) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1051) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537) 
    at org.apache.catalina.startup.ContextConfig.processContextConfig(ContextConfig.java:612) 
    at org.apache.catalina.startup.ContextConfig.contextConfig(ContextConfig.java:556) 
    at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:814) 
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:363) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
    at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:110) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556) 
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
08-Jul-2012 18:59:32 org.apache.catalina.startup.ContextConfig processContextConfig 
SEVERE: Parse error in context.xml for /chapter5 
java.lang.NoSuchMethodException: org.apache.catalina.session.StandardManager setStore 
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2687) 
    at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2719) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1054) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537) 
    at org.apache.catalina.startup.ContextConfig.processContextConfig(ContextConfig.java:612) 
    at org.apache.catalina.startup.ContextConfig.contextConfig(ContextConfig.java:556) 
    at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:814) 
    at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:363) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) 
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) 
    at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401) 
    at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:110) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556) 
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.NoSuchMethodException: org.apache.catalina.session.StandardManager setStore 
    at org.apache.tomcat.util.IntrospectionUtils.callMethod1(IntrospectionUtils.java:855) 
    at org.apache.tomcat.util.digester.SetNextRule.end(SetNextRule.java:201) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1051) 
    ... 28 more 
08-Jul-2012 18:59:32 org.apache.catalina.startup.ContextConfig processContextConfig 
SEVERE: Occurred at line 41 column 87 
08-Jul-2012 18:59:33 org.apache.catalina.startup.ContextConfig configureStart 
SEVERE: Marking this application unavailable due to previous error(s) 
08-Jul-2012 18:59:33 org.apache.catalina.core.StandardContext startInternal 
SEVERE: Error getConfigured 
08-Jul-2012 18:59:33 org.apache.catalina.core.StandardContext startInternal 
SEVERE: Context [/chapter5] startup failed due to previous errors 
08-Jul-2012 18:59:33 org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
08-Jul-2012 18:59:33 org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-bio-8009"] 
08-Jul-2012 18:59:33 org.apache.catalina.startup.Catalina start 
INFO: Server startup in 257 ms 

任何想法发生了什么问题?

回答

1

<Manager>元素被打破:你想className和所有其他属性是<>马克。

相关问题