首页 > 解决方案 > Servlet JSP 获取调用 404

问题描述

我目前正在使用 Oracle JDeveloper 开发一个简单的 Web 应用程序项目。

我有一个输入字段,用户可以在其中提供其用户名。一旦焦点移出它,jquery AJAX 方法就会执行并调用 servlet 并处理响应。

索引.jsp

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jQuery, Ajax and Servlet/JSP integration example</title>

<script src="https://code.jquery.com/jquery-1.10.2.js"
    type="text/javascript"></script>
<script src="js/app-ajax.js" type="text/javascript"></script>
</head>
<body>

    <form>
        Enter Your Name: <input type="text" id="userName" />
    </form>
    <br>
    <br>

    <strong>Ajax Response</strong>:
    <div id="ajaxGetUserServletResponse"></div>
</body>
</html>

应用程序-ajax.js

$(document).ready(function() {
    $('#userName').blur(function() {
        $.ajax({
            url : 'GetUserServlet',
            data : {
                userName : $('#userName').val()
            },
            success : function(responseText) {
                $('#ajaxGetUserServletResponse').text(responseText);
            }
        });
    });
});

然后是servlet:GetUserServlet.java


import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/GetUserServlet")
public class GetUserServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

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

        String userName = request.getParameter("userName").trim();
        if(userName == null || "".equals(userName)){
            userName = "Guest";
        }

        String greetings = "Hello " + userName;

        response.setContentType("text/plain");
        response.getWriter().write(greetings);
    }

}

提供用户名并移出焦点后,出现错误:404 Not Found

标签: javajspservlets

解决方案


推荐阅读