精华内容
下载资源
问答
  • 给JavaWeb的servlet发张合法身份证(IDEA中web.xml配置servlet) 为什么要配置?Tomcat等容器不能自动识别servlet,只有在web.xml中配置或者通过注解(在servlet3.0之后),容器才能识别url-pattern属性,以便...

    给JavaWeb的servlet发张合法身份证(IDEA中web.xml配置servlet)

    为什么要配置?Tomcat等容器不能自动识别servlet,只有在web.xml中配置或者通过注解(在servlet3.0之后),容器才能识别url-pattern属性,以便前端或者app访问。

    配置方法:

    1、        配置前弄清楚:servlet的包名与类名

    2、        web.xml的组成结构(必须是声明了web-app version=3.0或以上的3.1)

    3、        配置项:servlet、servlet-map,注意前者表示声明servlet,后者建立名与url的映射关系(可以是servlet一对多url)。

    4、        配置案例:

     4.1、首先正确配置 IntelliJ IDEA 14.03 + Tomcat,配置好以后新建的项目结构如图所示:

    (没有运行过的class文件夹是空的,运行过后class文件夹里面才会有.class文件)

    4.2、自动建立的web.xml文件如图:

    4.3、在<web-app>标签中插入<servlet>标签、<servlet-mapping>标签,如图:

    4.4、代码:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
            version="3.1">
       <servlet>
           <servlet-name>Servlet</servlet-name>
           <servlet-class>Servlet.MyServlet</servlet-class> //<servlet-class>中的内容是固定的,必须是"Servlet所在包的名称.Servlet类的名称"
       </servlet>
       <servlet-mapping>
           <servlet-name>Servlet</servlet-name>
           <url-pattern>/Servlet/MyServlet</url-pattern>
       </servlet-mapping>
    </web-app>

    新建的四个标签中servlet-class标签的内容是固定的,不能随意修改;

    servlet-name标签中的内容自定,但两个servlet-name标签中的内容必须相同;

    url-pattern标签中的内容自定,如例子中url-pattern为 /Servlet/MyServlet ,tomcat端口(默认)为8080,

    则启动项目后,在浏览器中输入http://localhost:8080/Servlet/MyServlet,即可访问到servlet所定义的页面。


    展开全文
  • 配置好web.xmlservlet配置重新启动tomcat8的时候报错 控制台报错: 八月 10, 2018 1:53:21 下午 org.apache.catalina.core.ContainerBase startInternal 严重: A child container failed during start java....

     

    配置好web.xml的servlet配置重新启动tomcat8的时候报错

    控制台报错:

    八月 10, 2018 1:53:21 下午 org.apache.catalina.core.ContainerBase startInternal
    严重: A child container failed during start
    java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/o2o]]
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:192)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:945)
        at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1410)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1400)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/o2o]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
        ... 6 more
    Caused by: java.lang.IllegalArgumentException: Servlet mapping specifies an unknown servlet name spring_dispatcher
        at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3230)
        at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3221)
        at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1375)
        at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1188)
        at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:773)
        at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:307)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)
        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5262)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        ... 6 more

    八月 10, 2018 1:53:21 下午 org.apache.catalina.core.ContainerBase startInternal
    严重: A child container failed during start
    java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:192)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:945)
        at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:641)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)
    Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1410)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1400)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    Caused by: org.apache.catalina.LifecycleException: A child container failed during start
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:953)
        at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        ... 6 more

    八月 10, 2018 1:53:21 下午 org.apache.catalina.startup.Catalina start
    严重: The required Server component failed to start so Tomcat is unable to start.
    org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8015]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:641)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)
    Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
        at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        ... 7 more
    Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)
        at org.apache.catalina.core.StandardService.startInternal(StandardService.java:441)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        ... 9 more
    Caused by: org.apache.catalina.LifecycleException: A child container failed during start
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:953)
        at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
        ... 11 more

    八月 10, 2018 1:53:21 下午 org.apache.coyote.AbstractProtocol pause
    信息: Pausing ProtocolHandler ["http-nio-8090"]
    八月 10, 2018 1:53:21 下午 org.apache.coyote.AbstractProtocol pause
    信息: Pausing ProtocolHandler ["ajp-nio-8019"]
    八月 10, 2018 1:53:21 下午 org.apache.catalina.core.StandardService stopInternal
    信息: Stopping service Catalina
    八月 10, 2018 1:53:21 下午 org.apache.coyote.AbstractProtocol destroy
    信息: Destroying ProtocolHandler ["http-nio-8090"]
    八月 10, 2018 1:53:21 下午 org.apache.coyote.AbstractProtocol destroy
    严重: Failed to destroy end point associated with ProtocolHandler ["http-nio-8090"]
    java.lang.NullPointerException
        at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:315)
        at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:491)
        at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:896)
        at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:551)
        at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
        at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)
        at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)
        at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)
        at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:879)
        at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:645)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)

    八月 10, 2018 1:53:21 下午 org.apache.coyote.AbstractProtocol destroy
    信息: Destroying ProtocolHandler ["ajp-nio-8019"]
    八月 10, 2018 1:53:21 下午 org.apache.coyote.AbstractProtocol destroy
    严重: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8019"]
    java.lang.NullPointerException
        at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:315)
        at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:491)
        at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:896)
        at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:551)
        at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
        at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)
        at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:589)
        at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)
        at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:879)
        at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:292)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:645)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:349)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:483)

     

    出错原因:

     java.lang.IllegalArgumentException: Servlet mapping specifies an unknown servlet name spring_dispatcher

     

    servlet与servlet-mapping不匹配 (name)

    返回web.xml文件查看

     

    servlet中的name是spring-dispatcher

    servlet-mapping中的name是spring_dispatcher

    即map映射没有匹配成功

     

     

    修改后,成功启动,问题解决。

    展开全文
  • web.xml配置servlet

    千次阅读 2017-08-06 09:33:07
    主要用于解决无法访问到servlet路径问题<servlet> <servlet-name>JsonServlet</servlet-name> //类名 <servlet-class>com.hzyc.jsonExample.servlet.JsonServlet</servlet-class> //类路径 </servlet><servlet-...

    主要用于解决无法访问到servlet路径问题

    <servlet>
        <servlet-name>JsonServlet</servlet-name> //类名
        <servlet-class>com.hzyc.jsonExample.servlet.JsonServlet</servlet-class> //类路径
    </servlet>
    
    <servlet-mapping>
        <servlet-name>JsonServlet</servlet-name>//类名
        <url-pattern>/JsonServlet</url-pattern>//  格式 “/name”  访问名字
    </servlet-mapping>
    展开全文
  • 我们按正常步骤创建servlet,接着配置web.xml文件,然后我们启动服务器时发现提示如下错误: 提示Tomcat服务器遇到一个问题,那我们首先看一下java文件: 我们可以发现在13行处:@WebServlet("/HelloWorld") ...

    我们按正常步骤创建servlet,接着配置web.xml文件,然后我们启动服务器时发现提示如下错误:

    错误提示

    提示Tomcat服务器遇到一个问题,那我们首先看一下java文件:

    我们可以发现在13行处:@WebServlet("/HelloWorld")

    java文件

    接下来看一下xml文件:

    发现我们已经配置好服务器了,那么问题究竟出在哪里呢?其实@WebServlet("/HelloWorld")是3.0版本自带的,方便我们开发的,写了他就可以不用配置web.xml文件,同样如果你习惯配置web.xml,那也可以删除@WebServlet("/HelloWorld"),所以二者留一个即可。
     

    展开全文
  • web.xml配置servlet的映射规则

    千次阅读 2019-01-06 22:08:19
    web.xml中基本的servlet配置如下,具体匹配规则可以参考:https://blog.csdn.net/weixin_42259823/article/details/85953537 <servlet> <servlet-name>MyServletName</servlet-name> <...
  • java web.xml配置servlet

    万次阅读 2012-03-09 11:13:45
    文件名:“SimpleServlet.java” package cn.mldn.lxh.servlet;//定义包 import java.io.*; //HttpServlet属于javax.servlet.http包下 //ServletException属于javax.servlet包下 import javax.servlet.*;//导入...
  • servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>...
  • Web.xml配置Servlet - Excerpts

    千次阅读 2006-10-12 10:51:00
    "Servlet 匹配过程 一个request可能匹配多于一个 servlet 映射。容器使用straightforward的匹配过程决定哪个servlet最匹配。匹配过程有四个简单规则: 1〉严格匹配优先于带 * 的匹配; 2〉最长pattern优先于其他...
  • 一般我们新建一个servlet总要完成对应的环境配置,我们先来看看一个简单得web.xml配置servlet: FindAllProvinceServlet com.canyugan.web.servlet.FindAllProvinceServlet FindAllProvinceServlet /...
  • Servlet两种访问路径    一、在Servlet类中通过设置@WebServlet标注访问  二、在web.xml中编写配置... 第二种把Servlet路径在web.xml配置, 能更好对Servlet路径进行配置的修改    利用Servlet处理注...
  • 项目xml配置servlet

    2017-03-27 10:49:25
    之前使用MyEclipse写项目,添加新的servlet文件会直接配置xml文件,但是IDEA并不能配置完全,路径没有配置,所以以下为正确的servlet配置web.xml <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:...
  • Web.xml配置Servlet

    千次阅读 热门讨论 2016-07-16 11:20:44
    之前在做项目中,一直需要在web.xml配置Servlet,但为什么这么写,这么写是如何通过配置文件找到我们响应的Servlet中的方法的呢?今天就从配置开始说起,我们的Servlet是如何在整个项目中起作用的。  Servelt配置...
  • 如何在web.xml配置servlet定义?  答:配置servlet定义:    name  package   配置servlet映射: name /patten 其中节点的名字定义和映射要统一。
  • IDEA 项目 web.xmlServlet 配置红色波浪线报错:cannot resolve servlet ‘springmvc’ 您是不是遇到了这样的问题: (1)servlet-name 红色波浪线 (2)servlet-mapping &gt; servlet-name 红色报错 问题...
  • web.xmlservlet配置及其含义

    万次阅读 多人点赞 2017-03-23 14:49:00
    这里其实最想说的是配置中各节点的含义: ServletDemo lm.practice.ServletDemo ...可以看到,在配置Servlet时,有两个地方需要配置,一个是servlet>,另一个是servlet-Mapping>,这两个一个是配置Serv
  • Servlet的配置分为两种:一种为文件配置(web.xml配置),另一种为注解配置(注入声明) 下面我们通过实例来分别使用这两种方法 一、 首先创建一个项目 首先创建一个Dynamic文件,对勾要勾上,自动生成xml文件,...
  • 在web.xml配置servlet

    2018-06-03 20:01:09
    在图中红色的地方写上你的Servlet名字 配置你的Servlet的映射路由,这样你的Servlet会自动的把配置文件加入到web.xml文件之中,但是Servlet3.0新特性(得Tomcat7.0版本及以上)则不一样可以参考 ...
  • idea中的web.xml配置servletservlet-mapping不匹配 在配置好servletservlet-mapping标签,但是提示有误,如下: 进入File下的Project Structure页面: 跟如图所示一样什么都没有的情况下,右边绿色加号加上就...
  • This is the description of my J2EE component This is the display name of my J2EE component ServletTest com.xyc.servlet.ServletTest ServletTest /servlet 假如你的web工程名为goodweb
  • Servlet】web.xmlservlet配置方法

    千次阅读 2015-02-11 23:40:05
    关于servlet的配置相信很多人都知道。 别名 servlet路径 别名 访问路径(以/开头) ...如果访问servlet的网页是直接放在Web...这样子配置servlet就很简单了,在web.xml里添加以下代码: loginServlet c
  • 关于如何在web.xml配置servlet

    千次阅读 2018-06-03 18:50:13
    在图中红色的地方写上你的Servlet名字 配置你的Servlet的映射路由,这样你的Servlet会自动的把配置文件加入到web.xml文件之中,但是Servlet3.0新特性(得Tomcat7.0版本及以上)则不一样可以参考 ...
  • eclipse项目web.xml文件配置servlet映射

    万次阅读 2017-05-22 11:53:56
    对于很多初学者在使用eclipse编写servlet小程序的时候,往往需要配置web.xml文件中的servlet项目。关于这个地方的配置说明网上的解释多如牛毛,但是对于初学者可能太过于高深,不能够很好的理解,这里笔者做一个简单...
  • 整个过程中的web.xml、SpringMVC.xml、applicationContext.xml配置文件起到关键作用,同时也是为了加深理解,在此做下记录,请看下面!一、SpringMVC的web.xml配置关于SpringMVC 的web.xml详细介绍,我之
  • web.xml与注解配置servlet使用介绍

    千次阅读 2017-08-09 07:45:41
    Servlet3.0是Java EE6规范的一部分所以说使用注解需要在JAVA EE6以上配置Servlet类 web.xml配置方法 <servlet> <servlet-name>servlet的名字</servlet-name> <servlet-class>servlet的路径</servlet-class> ...
  • JavaWeb项目中web.xml有关servlet的基本配置

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,341
精华内容 10,936
关键字:

xml配置servlet