Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
404 Java项目中的ApacheTomcat_Java_Html_Eclipse_Tomcat_Post - Fatal编程技术网

404 Java项目中的ApacheTomcat

404 Java项目中的ApacheTomcat,java,html,eclipse,tomcat,post,Java,Html,Eclipse,Tomcat,Post,这就是我的项目: 其中Registro.java是: package Ejer2; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.ht

这就是我的项目:

其中Registro.java是:

    package Ejer2;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.*;



@SuppressWarnings("deprecation")
@WebServlet(urlPatterns="/Registro")
public class Registro extends HttpServlet implements SingleThreadModel{
    private static final long serialVersionUID = 1L;



    public Registro() {
        super();

    }



    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


    }


    protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
        HttpSession session=req.getSession(true);
        Usuario miuser=(Usuario)session.getValue(session.getId());
        if(miuser==null){
            miuser=new Usuario(req.getParameter("user"),req.getParameter("password"));
            session.putValue(session.getId(),miuser);
        }
        res.setContentType("text/html");

        String user=req.getParameter("user");
        //String pass = req.getParameter("pass");

        PrintWriter toClient = res.getWriter();
        toClient.println("<html>");
        toClient.println("<title>REGISTRO REALIZADO</title>");
        toClient.println("Usuario "+user+" registrado con exito");
        toClient.println("</html>");

        toClient.close();
    }

}
包Ejer2;
导入java.io.IOException;
导入java.io.PrintWriter;
导入javax.servlet.ServletException;
导入javax.servlet.annotation.WebServlet;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入javax.servlet.http.HttpSession;
导入javax.servlet.*;
@抑制警告(“弃用”)
@WebServlet(urlPatterns=“/Registro”)
公共类Registro扩展HttpServlet实现SingleThreadModel{
私有静态最终长serialVersionUID=1L;
公共登记处(){
超级();
}
受保护的void doGet(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
}
受保护的void doPost(HttpServletRequest-req,HttpServletResponse-res)引发ServletException,IOException{
HttpSession session=req.getSession(true);
Usuario miuser=(Usuario)session.getValue(session.getId());
if(miuser==null){
miuser=new Usuario(请求获取参数(“用户”)、请求获取参数(“密码”);
session.putValue(session.getId(),miuser);
}
res.setContentType(“文本/html”);
字符串user=req.getParameter(“用户”);
//字符串pass=req.getParameter(“pass”);
PrintWriter-toClient=res.getWriter();
toClient.println(“”);
toClient.println(“注册实现”);
toClient.println(“Usuario”+用户+“registerdo-exito”);
toClient.println(“”);
toClient.close();
}
}
registro.html是:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="ISO-8859-1">
        <title>Registro</title>
    </head>
    <body>
        <form action="/Ejer2/Registro" method="POST">
            <input type=hidden name=registro value=resultadoRegistro>
            <BR><BR>Username: <input type=text name=user>
            <BR><BR>Password: <input type=password name=pass>
            <BR><BR><input type=submit value="Enviar"><input type=reset>
        </form>
    </body>
</html>

登记处

用户名:
密码:

当我运行registro.html时,一切都按预期进行:

但当我输入用户名和密码时,它不起作用:

似乎找不到Registro.java。我已尝试将
操作=“/Ejer2/Registro”
更改为许多其他内容,如
/Registro
或完整的
http://...
但仍然不起作用

这是我的web.xml:


有什么问题吗?

我猜您的web.xml中缺少servlet映射。您需要在web.xml中注册servlet(打开web.xml文件并在底部的“更改”选项卡中查看实际的源代码而不是设计器),然后添加以下代码,这样就可以开始了

<servlet>
    <servlet-name>RegistroServlet</servlet-name>
    <servlet-class>Ejer2.Registro</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>RegistroServlet</servlet-name>
    <url-pattern>/Registro</url-pattern>
</servlet-mapping>

玫瑰花瓣
Ejer2.Registro
玫瑰花瓣
/登记处
我还建议您在尝试编写web应用程序之前,退一步,从基本java开始。您的代码有几个新手问题:
1) 软件包名称应以小写字母开头
2) url映射也应该是小写的,比如/registro

在表单操作中,更改url以匹配url映射。在您的情况下,它是
form action=“/Registro”…


Ejer2是包的名称,它和url映射无关。希望它能帮助解决您的问题

我猜您的web.xml中缺少servlet映射。您需要在web.xml中注册servlet(打开web.xml文件并在底部的“更改”选项卡中查看实际的源代码而不是设计器),然后添加以下代码,这样就可以开始了

<servlet>
    <servlet-name>RegistroServlet</servlet-name>
    <servlet-class>Ejer2.Registro</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>RegistroServlet</servlet-name>
    <url-pattern>/Registro</url-pattern>
</servlet-mapping>

玫瑰花瓣
Ejer2.Registro
玫瑰花瓣
/登记处
我还建议您在尝试编写web应用程序之前,退一步,从基本java开始。您的代码有几个新手问题:
1) 软件包名称应以小写字母开头
2) url映射也应该是小写的,比如/registro

在表单操作中,更改url以匹配url映射。在您的情况下,它是
form action=“/Registro”…


Ejer2是包的名称,它和url映射无关。希望它有助于解决您的问题

显示您的web.xmlfile@MartinČuka完成,在问题中,我需要查看web.xml的源代码。从“设计”更改为“源代码”,向我展示您的web.xmlfile@MartinČuka完成,在问题中,我需要查看web.xml的源代码。从“设计”更改为“来源”