下了个tomcat7 bata试用了下,结果默认的直接启动,报错
错误消息:
2010-11-13 20:12:08 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory docs
2010-11-13 20:12:08 org.apache.catalina.startup.HostConfig deployDirectory
严重: Error deploying web application directory docs
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()Ljavax/servlet/SessionCookieConfig;
at org.apache.catalina.deploy.WebXml.configureContext(WebXml.java:1281)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1283)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:881)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:315)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4700)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:810)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:788)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:558)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1051)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:977)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:507)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1322)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:307)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:325)
at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:305)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1036)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:773)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1028)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:278)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:429)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:662)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:140)
at org.apache.catalina.startup.Catalina.start(Catalina.java:592)
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:290)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:418)
可以看出是读写配置文件出错,原来是servlet3.0的包的错误,tomcat7在运行的时候,使用的不是自己lib下面的那个api,而是使用的
这个目录下的jdk1.6.0_10\jre\lib\ext
只要把这个下面的servlet-api.jar替换成tomcat7下面的那个jar包文件,启动就正常了
下面这篇文章对于配置讲解很详细:
http://www3.ntu.edu.sg/home/ehchua/programming/howto/Tomcat7_HowTo.html
分享到:
相关推荐
在Java Web开发中,`javax.servlet.jar`和`javax.servlet.jsp.jar`是两个非常重要的库文件,它们分别提供了Servlet和JSP(JavaServer Pages)的核心API。这两个库是开发基于Java的Web应用程序不可或缺的部分,特别是...
在Java Web开发中,"javax.servlet.jar"和"javax.servlet.jsp.jar"通常是Tomcat、Jetty等Web服务器或应用服务器的标准库,它们允许开发者创建可扩展的、高性能的Web应用。这两个库的使用意味着你可以利用Servlets...
3. `javax.servlet.ServletContext`:表示Servlet容器的全局信息,如服务器的名称、web应用的路径等,还可以用来与其他Servlet共享数据。 4. `javax.servlet.http.HttpServletRequest`和`javax.servlet....
在实际开发中,将`javax.servlet-api-3.1.0.jar`作为项目的依赖,可以确保与各种Web容器(如Tomcat、Jetty)的兼容性。但是需要注意,此库通常仅在编译阶段使用,运行时通常由Web服务器提供,避免了打包到最终的WAR...
javax.servlet的jar包是Java Web开发中不可或缺的一部分,它提供了Servlet和JSP(JavaServer Pages)的核心API,使得开发者能够创建动态web应用程序。这个jar包是Java Servlet规范的一部分,由Java Community ...
【标题】"javax.servlet_api.chm中文版英文版" 提供了关于Java Servlet API的详细文档,涵盖了中文和英文两种语言版本。这个压缩包包含了帮助文件(CHM格式),是开发者学习和查阅Servlet API的重要资源。 【描述】...
`servlet-api.jar`作为服务器的一部分通常由容器(如Tomcat、Jetty)提供,而`javax.jms.jar`则需要根据具体需求额外引入,特别是在涉及消息队列或事件驱动架构的应用中。 理解并熟练运用这两个API,能够帮助开发者...
jdk8u92 tomcat8启动报错 tomcat启动javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String; jdk可以换成这个
开发环境中,如Tomcat或Jetty这样的Servlet容器会自动提供这个库。但在某些部署环境中,比如在没有集成Web服务器的独立Java应用中,你需要手动包含这个库。 ### 4. 开发实践 在实际开发中,开发者通常会使用Maven...
javax.servlet是Java Servlet API的核心部分,它为开发Web应用程序提供了标准的接口和类。这个帮助文档是老师提供的,旨在帮助学生理解和使用这个API来构建基于Java的Web服务。以下是对javax.servlet关键知识点的...
通过`HttpServletRequest.getRequestDispatcher()`和`ServletContext.getRequestDispatcher()`方法获取实例,用于将请求传递给其他资源。 7. **HttpServletRequest**和**HttpServletResponse**:这两个接口分别表示...
4. javax.servlet.ServletContext:代表Web应用程序的上下文,可以获取全局的配置信息和资源。 5. javax.servlet.RequestDispatcher:用于转发请求和包含资源,支持请求的定向。 6. javax.servlet.ServletRequest和...
压缩包中的`servletapi`可能包含了Servlet API的完整JAR文件,通常在Java Web开发中,这个JAR会被添加到Web应用的类路径中,以便Web容器(如Tomcat、Jetty等)能够识别并调用Servlet API提供的功能。 综上所述,...
4. `javax.servlet.ServletContext`:表示一个Web应用程序的上下文,提供对全局资源的访问,如静态资源、其他Servlet等。 5. `javax.servlet.http.HttpServletRequest`和`javax.servlet.http.HttpServletResponse`:...
1. **javax.servlet** 包:这是Servlet API的核心,提供了Servlet、ServletConfig、ServletContext等基础接口。Servlet接口定义了Servlet的基本行为,如init、service、destroy方法,用于初始化、处理请求和销毁...
5. `javax.servlet.ServletContext`:提供了关于整个Web应用的信息,如初始化参数、上下文路径等。 `javax.servlet.jar`则可能包含了更广泛的Servlet相关实现或扩展,比如Tomcat等Servlet容器提供的额外功能。它...
7. **Listener**:Servlet API还支持事件监听器,如`ServletContextListener`、`ServletRequestListener`和`HttpSessionListener`,可以在特定事件(如Web应用启动、请求创建、会话创建等)发生时执行代码。...