Deployment 失败-无法启动上下文路径/Hello处的应用程序

Deployment 失败-无法启动上下文路径/Hello处的应用程序,deployment,tomcat,tomcat6,Deployment,Tomcat,Tomcat6,我正试图在Tomcat 6.0中部署新的web应用程序,但每当我单击开始按钮时,就会反复出现失败-上下文路径/Hello中的应用程序无法启动。每当我单击开始按钮时,其他部署的应用程序运行良好。但是为什么不使用这个应用程序呢 web xml: <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:s

我正试图在Tomcat 6.0中部署新的web应用程序,但每当我单击开始按钮时,就会反复出现失败-上下文路径/Hello中的应用程序无法启动。每当我单击开始按钮时,其他部署的应用程序运行良好。但是为什么不使用这个应用程序呢

web xml:

 <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
         version="2.4">

<servlet>
<servlet-name>j_security_check</servlet-name>
<servlet-class>EmailHander</servlet-class>
</servlet>

<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/fail_login.html</form-error-page>
</form-login-config>
</login-config>
<web-app>

web xml文件中出现该错误的原因是什么?

EmailHandler
实际上是servlet类的全名,即它不在类似
com.something.EmailHandler
的包中?它必须在
web.xml

中完全限定,您的
web.xml
结尾,但必须以
结尾


顺便说一句,这几乎就是异常告诉您的内容。

您需要用
关闭XML,而不是用
关闭XML。我也遇到过同样的问题,web.XML中的servlet url缺少斜杠

替换

<servlet-mapping>
    <servlet-name>jsonservice</servlet-name>
    <url-pattern>jsonservice</url-pattern>
</servlet-mapping>

jsonservice
jsonservice


jsonservice
/jsonservice

检查web.xml文件可能是servletContextlistener做得不好。
在我的例子中,我添加了servletContextlistener,让他一个空的,并给了我相同的错误,我试图从项目文件中删除它,但它仍然在web.xml文件中。最后,我从web.xml中删除它并保存文件。运行该项目,它成功地声明了第一个原因可能是应用程序的web.xml文件的结束标记,该文件无法正确关闭

web.xml可能以
结尾,但必须以
结尾

第二个原因在我的案例中起作用的可能是tomcat的lib文件夹必须包含数据库的支持jar文件


对于Oracle,
ojdbc
,对于SqlServer,
sqljdbc
,如果可以的话,我会给出+2的答案,就因为第二条评论!;)
<servlet-mapping>
    <servlet-name>jsonservice</servlet-name>
    <url-pattern>jsonservice</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>jsonservice</servlet-name>
    <url-pattern>/jsonservice</url-pattern>
</servlet-mapping>