日期:2014-05-17  浏览次数:20844 次

servlet 与web.xml的配置问题
本帖最后由 franket268 于 2013-11-15 03:16:11 编辑
我在com.servlet 文件下新建了一个aaServlet.java
然后在web.xml中配置
    <servlet>
    <servlet-name>aaServlet</servlet-name>
    <servlet-class>com.servlet.aaServlet</servlet-class>
  </servlet>
   <servlet-mapping>
    <servlet-name>aaServlet</servlet-name>
    <url-pattern>/aaServlet</url-pattern>
  </servlet-mapping>

在启动tomcat就报错了,说server failed to start
看了看出错原因,是说 The servlets named [aaServlet] and [com.servlet.aaServlet] are both mapped to the url-pattern [/aaServlet] which is not permitted

于是我改成 <url-pattern>/aab</url-pattern> 就不报错了。
这是什么原因呢,以前做的时候也不会报错
servlet

------解决方案--------------------
引用:
Quote: 引用:

看你异常信息:名为aaServlet和com.servlet.aaServlet不能同时映射到一个url-pattern [/aaServlet], 你是不是在web.xml写了两个名为aaServlet的servlet,两个servlet不能共用同名的url-patern,所以你改成aab就没有异常了,好好看看你的  <servlet-name>有没有搞重。。。


没有重的,整个web.xml就只有
<servlet>
    <servlet-name>aaServlet</servlet-name>
    <servlet-class>com.servlet.aaServlet</servlet-class>
  </servlet>
   <servlet-mapping>
    <servlet-name>aaServlet</servlet-name>
    <url-pattern>/aaServlet</url-pattern>
  </servlet-mapping>

把你整个web.xml代码帖出来。。。另外,你这servlet建的不合格啊com.servlet.aaServlet,这类名字一般第一个字母是大写的,我猜是不是这个的原因呢。。。