开发环境:eclipse+Tomcat
开发语言:HTML+CSS+JavaScript+JSP

在使用JSP的servlet时,必须对servlet在web.xml中进行<servlet><servlet-mapping>配置,配置形式如下图所示:



当把JSP工程放到服务器上运行时出现如下入错误:

Server at localhost failed to start.




在Console视图中的错误提示如下:

A child container failed during start

cause by Failed to start component

cause by the sarvlet named [x] and [Y] are both mapped to the url [/url] which is not permitted

...........................................................



解决办法(二选一):
1. 打开自己的XXXServlet.Java,删除@WebServlet(“XXXXXX”),并在web.xml中正确配置<servlet>和<servlet-mapping>
2. 打开自己的XXXServlet.java,在public class Servlet extends HttpServlet{ 上面一行添加 @WebServlet(name="XXXServlet" , urlPatterns="/XXXServlet"),并删除web.xml中的所有配置内容。


解释:
目前,Servlet 3.0是Servlet规范的最新版本,其新增了注释的特性,如@WebServlet、@WebFilter、@WebListener等,通过注释就无需在web.xml中进行配置。eclipse中,通过File/New/servlet创建servlet时会自动生成@WebServlet("/XXX"),也就是自动注释了URL地址映射部分。
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐