java - 当我在 webapps 文件夹中加载我的 webapp 时,我在 WEB-INF/classes 中的类文件被删除

标签 java jsp tomcat servlets struts

<分区>

我正在使用 Tomcat 5,当我启动服务器并从 webapp 文件夹加载我的应用程序时,我的 JSP 会加载,但是 WEB-INF/classes 中的类文件会被自动删除 当我加载类文件时它会抛出这个:

this is the error

我的 servlet 类文件正在删除/不知道它去了哪里。

  This is my `web.xml` file inside `WEB-INF/` .classes mapped inside `web.xml` is in `WEB-INF/classes`. All class files inside this is getting erased.

   <?xml version="1.0" encoding="ISO-8859-1"?>


   <web-app xmlns="http://java.sun.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                  http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"
  metadata-complete="true">

  <display-name>Welcome to Tomcat</display-name>
   <description>
    Welcome to Tomcat
   </description>
   <servlet>
   <servlet-name>HelloForm</servlet-name>
   <servlet-class>HelloForm</servlet-class>
   </servlet>

   <servlet-mapping>
   <servlet-name>HelloForm</servlet-name>
   <url-pattern>/HelloForm</url-pattern>
   </servlet-mapping>
   <servlet>
   <servlet-name>Upload</servlet-name>
   <servlet-class>Upload</servlet-class>
   </servlet>

  <servlet-mapping>
   <servlet-name>Upload</servlet-name>
   <url-pattern>/Upload</url-pattern>
  </servlet-mapping>
 <servlet>
 <servlet-name>Getapplicants</servlet-name>
 <servlet-class>Getapplicants</servlet-class>
</servlet>

  <servlet-mapping>
   <servlet-name>Getapplicants</servlet-name>
<url-pattern>/Getapplicants</url-pattern>
 </servlet-mapping>
 <servlet>
    <servlet-name>First_round_selected</servlet-name>
    <servlet-class>First_round_selected</servlet-class>
  </servlet>

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

  <servlet>
  <servlet-name>Second_round_selected</servlet-name>
  <servlet-class>Second_round_selected</servlet-class>
 </servlet>

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


   
   </web-app>

坚持这一点:

上传.java:

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
// Extend HttpServlet class
public class Upload extends HttpServlet {

// Method to handle GET method request.
  public void doGet(HttpServletRequest request, HttpServletResponse 
  response)throws ServletException, IOException {
  PrintWriter out = response.getWriter();
  String first_name=request.getParameter("first_name");
  String last_name=request.getParameter("last_name");
  String email=request.getParameter("email");
  String phone_number=request.getParameter("phone_number");
  String experience =request.getParameter("experience");

  try{
  Connection 
  con=DriverManager.getConnection("jdbc:mysql://localhost:3306/interview"
  ,"root","
   ");  
     Statement stmt=con.createStatement(); 
     int rows=stmt.executeUpdate("insert into applicants 
     values('"+first_name+"','"+last_name+"','"+email+"',"+
     Long.valueOf(phone_number
                 )+","+Integer.valueOf(experience)+")");      
                con.close();
              out.print("Added Sucessfully");


          }catch(Exception e){out.print(e);}   
           }


        public void doPost(HttpServletRequest request, HttpServletResponse 
         response)
           throws ServletException, IOException {

         doGet(request, response);
          }
         }

最佳答案

正如您所说,您正在使用 tomcat 5,它支持到 servlet 2.5。但是你使用的是 servlet 3.0

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                  http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"

查看下面的详细信息

enter image description here

有两种解决方案:升级你的tomcat或者使用servlet 2.5

Servlet 2.5 部署描述符

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

关于java - 当我在 webapps 文件夹中加载我的 webapp 时,我在 WEB-INF/classes 中的类文件被删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47772026/

相关文章:

Java WebSockets : The remote endpoint was in state [TEXT_FULL_WRITING]

Java - 这是一个成语还是模式,没有状态的行为类

java - 如何刷新需要从数据库加载的 Android Activity ?

java - 如何使用 ProcessBuilder 运行 MySQL 脚本?

jsp - 如何将 Unicode 字符作为 JSP/Servlet request.getParameter 传递?

java - 如何使用 spring mvc 使用子字符串从数据库中剪切内容?

tomcat - tomcat的域名

java - 如何在 tomcat 中包含外部 config.properties

java - 我可以在java中让图像alpha从左到右淡入淡出吗?

java - 求一个结合对少数web技术的理解的问题