Tomcat错误:警告:无法检索容器的JNDI命名上下文
当我尝试在Tomcat 7上启动最近部署的Web应用程序时,我在Tomcat70/logs/
文件夹中的catalina.2013-12-31.log
文件中遇到以下错误。
Dec 31, 2013 10:11:20 AM org.apache.catalina.deploy.NamingResources cleanUp WARNING: Failed to retrieve JNDI naming context for container [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/crm]] so no cleanup was performed for that container javax.naming.NameNotFoundException: Name [comp/env] is not bound in this Context. Unable to find [comp]. at org.apache.naming.NamingContext.lookup(NamingContext.java:820) at org.apache.naming.NamingContext.lookup(NamingContext.java:168) at org.apache.catalina.deploy.NamingResources.cleanUp(NamingResources.java:977) at org.apache.catalina.deploy.NamingResources.stopInternal(NamingResources.java:959) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5483) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:141) at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1247) at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:747) at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:222) at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:186) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722)
我的应用程序是JDK7 Web应用程序。 我试图寻找类似的问题,并尝试了一些建议,如重新启动服务器(为了清除一些XML文件),但它没有用。
有什么想法吗?
更新:
这就是我在web.xml
:
60 Servlet Mapped Filter Filters.ExampleFilter attribute Filters.ExampleFilter.SERVLET_MAPPED Path Mapped Filter Filters.ExampleFilter attribute Filters.ExampleFilter.PATH_MAPPED Request Dumper Filter Filters.RequestDumperFilter Set Character Encoding Filters.SetCharacterEncodingFilter encoding EUC_JP Compression Filter CompressionFilters.CompressionFilter compressionThreshold 10 debug 0 Servlet Mapped Filter invoker Path Mapped Filter /servlet/* Listeners.ContextListener Listeners.SessionListener SendMailServlet SendMailServlet snoop SnoopServlet Security role for anonymous access tomcat servletToJsp servletToJsp CompressionFilterTestServlet CompressionFilters.CompressionFilterTestServlet CompressionFilterTestServlet /CompressionTest SendMailServlet /SendMailServlet snoop /snoop servletToJsp /servletToJsp AddNewContact Crm.Servlets.AddNewContact AddNewContact /servlet/AddNewContact AddTip Crm.Servlets.AddTip AddTip /servlet/AddTip CaaPdfOutputter Crm.Servlets.CaaPdfOutputter CaaPdfOutputter /servlet/CaaPdfOutputter CaaTestSubmit Crm.Servlets.CaaTestSubmit CaaTestSubmit /servlet/CaaTestSubmit DeleteTip Crm.Servlets.DeleteTip DeleteTip /servlet/DeleteTip DestinationCustomerFinancialAdvisorRefresh Crm.Servlets.DestinationCustomerFinancialAdvisorRefresh DestinationCustomerFinancialAdvisorRefresh /servlet/DestinationCustomerFinancialAdvisorRefresh DestinationCustomerRefresh Crm.Servlets.DestinationCustomerRefresh DestinationCustomerRefresh /servlet/DestinationCustomerRefresh DestinationCustomerShadowFinancialAdvisorRefresh Crm.Servlets.DestinationCustomerShadowFinancialAdvisorRefresh DestinationCustomerShadowFinancialAdvisorRefresh /servlet/DestinationCustomerShadowFinancialAdvisorRefresh DestinationOfficerControl Crm.Servlets.DestinationOfficerControl DestinationOfficerControl /servlet/DestinationOfficerControl DestinationOfficerFinancialAdvisorControl Crm.Servlets.DestinationOfficerFinancialAdvisorControl DestinationOfficerFinancialAdvisorControl /servlet/DestinationOfficerFinancialAdvisorControl DestinationOfficerShadowFinancialAdvisorControl Crm.Servlets.DestinationOfficerShadowFinancialAdvisorControl DestinationOfficerShadowFinancialAdvisorControl /servlet/DestinationOfficerShadowFinancialAdvisorControl FactFindControl Crm.Servlets.FactFindControl FactFindControl /servlet/FactFindControl InsertAddedCustomerFinancialAdvisor Crm.Servlets.InsertAddedCustomerFinancialAdvisor InsertAddedCustomerFinancialAdvisor /servlet/InsertAddedCustomerFinancialAdvisor InsertAddedCustomerRelationshipOfficer Crm.Servlets.InsertAddedCustomerRelationshipOfficer InsertAddedCustomerRelationshipOfficer /servlet/InsertAddedCustomerRelationshipOfficer InsertAddedCustomerShadowFinancialAdvisor Crm.Servlets.InsertAddedCustomerShadowFinancialAdvisor InsertAddedCustomerShadowFinancialAdvisor /servlet/InsertAddedCustomerShadowFinancialAdvisor KYCControl Crm.Servlets.KYCControl KYCControl /servlet/KYCControl LeadAssignmentTransfer Crm.Servlets.LeadAssignmentTransfer LeadAssignmentTransfer /servlet/LeadAssignmentTransfer LeadAssignmentView Crm.Servlets.LeadAssignmentView LeadAssignmentView /servlet/LeadAssignmentView LeadDetailsGenerator Crm.Servlets.LeadDetailsGenerator LeadDetailsGenerator /servlet/LeadDetailsGenerator ListAddedCustomerFinancialAdvisor Crm.Servlets.ListAddedCustomerFinancialAdvisor ListAddedCustomerFinancialAdvisor /servlet/ListAddedCustomerFinancialAdvisor ListAddedCustomerRelationshipOfficer Crm.Servlets.ListAddedCustomerRelationshipOfficer ListAddedCustomerRelationshipOfficer /servlet/ListAddedCustomerRelationshipOfficer ListAddedCustomerShadowFinancialAdvisor Crm.Servlets.ListAddedCustomerShadowFinancialAdvisor ListAddedCustomerShadowFinancialAdvisor /servlet/ListAddedCustomerShadowFinancialAdvisor RemoveCustomerFinancialAdvisor Crm.Servlets.RemoveCustomerFinancialAdvisor RemoveCustomerFinancialAdvisor /servlet/RemoveCustomerFinancialAdvisor RemoveCustomerRelationshipOfficer Crm.Servlets.RemoveCustomerRelationshipOfficer RemoveCustomerRelationshipOfficer /servlet/RemoveCustomerRelationshipOfficer RemoveCustomerShadowFinancialAdvisor Crm.Servlets.RemoveCustomerShadowFinancialAdvisor RemoveCustomerShadowFinancialAdvisor /servlet/RemoveCustomerShadowFinancialAdvisor RetrieveTips Crm.Servlets.RetrieveTips RetrieveTips /servlet/RetrieveTips SourceCustomerFinancialAdvisorRefresh Crm.Servlets.SourceCustomerFinancialAdvisorRefresh SourceCustomerFinancialAdvisorRefresh /servlet/SourceCustomerFinancialAdvisorRefresh SourceCustomerRefresh Crm.Servlets.SourceCustomerRefresh SourceCustomerRefresh /servlet/SourceCustomerRefresh SourceCustomerShadowFinancialAdvisorRefresh Crm.Servlets.SourceCustomerShadowFinancialAdvisorRefresh SourceCustomerShadowFinancialAdvisorRefresh /servlet/SourceCustomerShadowFinancialAdvisorRefresh SourceOfficerControl Crm.Servlets.SourceOfficerControl SourceOfficerControl /servlet/SourceOfficerControl SourceOfficerFinancialAdvisorControl Crm.Servlets.SourceOfficerFinancialAdvisorControl SourceOfficerFinancialAdvisorControl /servlet/SourceOfficerFinancialAdvisorControl SourceOfficerShadowFinancialAdvisorControl Crm.Servlets.SourceOfficerShadowFinancialAdvisorControl SourceOfficerShadowFinancialAdvisorControl /servlet/SourceOfficerShadowFinancialAdvisorControl TransferCustomerFinancialAdvisor Crm.Servlets.TransferCustomerFinancialAdvisor TransferCustomerFinancialAdvisor /servlet/TransferCustomerFinancialAdvisor TransferCustomerRelationshipOfficer Crm.Servlets.TransferCustomerRelationshipOfficer TransferCustomerRelationshipOfficer /servlet/TransferCustomerRelationshipOfficer TransferCustomerShadowFinancialAdvisor Crm.Servlets.TransferCustomerShadowFinancialAdvisor TransferCustomerShadowFinancialAdvisor /servlet/TransferCustomerShadowFinancialAdvisor UpdateCustomerMonitoringUnit Crm.Servlets.UpdateCustomerMonitoringUnit UpdateCustomerMonitoringUnit /servlet/UpdateCustomerMonitoringUnit SohPdfOutputter Crm.Servlets.SohPdfOutputter SohPdfOutputter /servlet/SohPdfOutputter variouscontrol Crm.Servlets.variouscontrol variouscontrol /servlet/variouscontrol http://jakarta.apache.org/tomcat/debug-taglib /WEB-INF/jsp/debug-taglib.tld http://jakarta.apache.org/tomcat/examples-taglib /WEB-INF/jsp/example-taglib.tld mail/Session javax.mail.Session Container Example Security Constraint Protected Area /jsp/security/protected/* DELETE GET POST PUT tomcat role1 FORM Example Form-Based Authentication Area /jsp/security/protected/login.jsp /jsp/security/protected/error.jsp minExemptions 1 java.lang.Integer foo/name1 value1 java.lang.String foo/bar/name2 true java.lang.Boolean name3 1 java.lang.Integer foo/name4 10 java.lang.Integer Example EJB Reference ejb/Account Entity com.mycompany.mypackage.AccountHome com.mycompany.mypackage.Account Example Local EJB Reference ejb/ProcessOrder Session com.mycompany.mypackage.ProcessOrderHome com.mycompany.mypackage.ProcessOrder
服务器的/Tomcat70/conf/
的context.xml
:
WEB-INF/web.xml
我删除了我的服务器并重新添加它。 工作
当Eclipse覆盖我的server.xml时,我遇到了这个错误,特别是从我的一个上下文中删除了JNDI依赖:
显而易见的解决方案 – 再次手动修改Eclipse中的“Servers” – >“Tomcat v7” – > server.xml,然后添加“Resource”元素。
清理Tomcat服务器后,我的工作人员离开了
今天我有同样的错误。 然后我在Tomcat服务器上执行了一个Clean,它告诉我有几个Maven POM缺失。 所以我执行了Maven更新项目(Eclipse:右键单击项目 – > Maven – >更新项目.. – >选择所需项目)。 这为我解决了问题。
双击服务器名称打开服务器配置。 之后,选中“发布模块上下文以分隔XML文件”复选框。 然后重新启动服务器
我最近遇到了这个奇怪的问题,答案是清单文件不是正确的编码或具有不可见的junc字符。 如果文件是在unix环境中创建的,并且您在Windows中运行它,则可能会发生这种情况。
解决方案是使用UTF-8编码重新创建文件。
这是一个非常奇怪的问题,但我通过仔细检查我的项目的web.xml来解决它。 当我向web.xml添加1个错误的servlet配置行时,同样的问题就出现了,当它被删除时它就消失了。 因此,请仔细检查您的web.xml并反转所有最近的更改 – 如果它能够正常工作,只需更正您刚刚创建的配置错误
可能这是一个老问题……但我们可以成为别人的经验教训……
我得到了相同的错误…我从服务器中删除了运行时,我删除了.m2 /存储库中的所有存储库,Maven更新,编译并且它工作正常
重启Tomcat。
测试servlet导致exception后,我的机器坏了。
我有同样的问题。
我使用的是Tomcat 8.5,我使用JNDI来配置对MySQL数据库的访问,我在我的java应用程序中使用了MySQL-connector jar版本8,
我使用MySQL-connector jar版本5来解决它。
它可能是由于java已损坏,卸载java并安装新的java版本。 它对我有用..