java - Tomcat 服务器运行 Eclipse 失败
问题描述
我正在尝试使用 tomcat server version 9 运行 java 应用程序。当我创建第一个项目并且项目成功运行但问题是当我创建另一个项目并将该项目分配给服务器时,我收到以下错误。
本地主机上的服务器 Tomcat v9.0 服务器无法启动。
这是 index.html 的代码
<!DOCTYPE html>
<html>
<body>
<body>
<form action="login">
User Name:<input type="text" name="userName"/>
Password:<input type="password" name="userPassword"/>
<input type="submit" value="submit"/>
</form>
</body>
</html>
这是 Servlet 代码。
package Edureka;
import java.io.*;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
@WebServlet("/login")
public class MyServlet1 extends HttpServlet{
/**
*
*/
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response) {
try{
response.setContentType("text/html");
PrintWriter pwriter = response.getWriter();
String name = request.getParameter("userName");
String password = request.getParameter("userPassword");
pwriter.print("Hello here:"+name);
pwriter.print(" Your Password is: "+password);
//Creating two cookies
Cookie c1=new Cookie("userName",name);
Cookie c2=new Cookie("userPassword",password);
//Adding the cookies to response header
response.addCookie(c1);
response.addCookie(c2);
pwriter.print("<a href='welcomehere'>View Details</a>");
pwriter.close();
}catch(Exception exp){
System.out.println(exp);
}
}
}
这是 web.xml 文件。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
<display-name>Cookies</display-name>
<servlet>
<servlet-name>Servlet1</servlet-name>
<servlet-class>Edureka.MyServlet1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet1</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Servlet2</servlet-name>
<servlet-class>Edureka.MyServlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet2</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
这是我尝试在 Eclipse 中运行它时的屏幕截图。
解决方案
您正在使用具有相同 URI 的部署描述符中的WebServlet
注释和url-pattern
映射。只在一个地方这样做。
推荐阅读
- vim - vim:如何在不删除所有“:”的情况下替换模式中的“:”?
- javascript - 在 OOP(JS 和 jQuery)中构建滑块,fadeIn() 和 fadeOut() 有问题
- c# - 是否可以使用 OpenXML 在 Excel 中读取动态命名范围?
- flutter - flutter 命令在 linux 14 中不起作用,它显示命令未找到,但它已经在路径中
- php - 如何在 AJAX 成功函数中比较 AJAX 值和 PHP 值
- php - 可以确定“可调用”是函数还是类方法?
- android - 从手机读取联系人非常慢
- matplotlib - 如何使用 matplotlib 在 3D 中绘制六边形
- rest - 邮递员请求在 Keycloak 保护的 REST API 中失败 春季安全
- api - 维基百科地理定位并没有给出所有最近的页面