老师404了,实在找不到哪里错了

老师404了,实在找不到哪里错了

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript" src="js/jquery-3.3.1.js">
    </script>
    <script type="text/javascript">
        $(function () {
            $.ajax({
                "url": "/JQUERY/news",
                "type": "get",
                "data": "t=tiobe",
                "dataType": "json",
                "success": function (json) {
                    console.log(json);
                }
            })
        })

    </script>
</head>

<body>
<div id="container">

</div>
</body>

</html>
package ajax;

import com.alibaba.fastjson.JSON;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class NewsListServlet extends HttpServlet {
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response) {
        String type = request.getParameter("t");
        List list = new ArrayList();
        if (type != null && type.equals("pypl")) {
            list.add(new News("55语言排行榜", "2018-5-1", "JAVA", "..."));
            list.add(new News("66语言排行榜", "2018-5-1", "JAVA", "..."));
            list.add(new News("77语言排行榜", "2018-5-1", "JAVA", "..."));
            list.add(new News("88语言排行榜", "2018-5-1", "JAVA", "..."));
        } else if (type == null || type.equals("tiobe")) {
            list.add(new News("5语言排行榜", "2018-5-1", "JAVA", "..."));
            list.add(new News("6语言排行榜", "2018-5-1", "JAVA", "..."));
            list.add(new News("7语言排行榜", "2018-5-1", "JAVA", "..."));
            list.add(new News("8语言排行榜", "2018-5-1", "JAVA", "..."));
        }
        //此处为fastjson jar包的Json
        String json = JSON.toJSONString(list);//将list进行序列化
        System.out.println(json);
        response.setContentType("text/html;charset=UTF-8");
        try {
            response.getWriter().println(json);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <servlet-name>ajax</servlet-name>
        <servlet-class>ajax.ContentServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>ajax</servlet-name>
        <url-pattern>/ajax</url-pattern>
    </servlet-mapping>
    <servlet>
        <servlet-name>news</servlet-name>
        <servlet-class>ajax.NewsListServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>news</servlet-name>
        <url-pattern>/news</url-pattern>
    </servlet-mapping>
    <servlet>
        <servlet-name>employee</servlet-name>
        <servlet-class>practice.EmployeeListServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>employee</servlet-name>
        <url-pattern>/employee</url-pattern>
    </servlet-mapping>
</web-app>


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,猜测同学的html页面cascade_menu.html与jquery_news.html在两个不同的项目中,所以可以看

到ajax中url的上下文路径是不一致的。如下是"访问cascade_menu.html时出现404"的回答。

代码经过测试访问cascade_menu.html时,若路径是正确的情况下是不会出现404问题的,运行结果如下:

https://img1.sycdn.imooc.com//climg/6182409e0926d7b406360389.jpg

代码中存在的问题,如下:

1、设置响应编码格式应是utf-8,而不是uft-8。

https://img1.sycdn.imooc.com//climg/618241ee09039cec05520070.jpg

2、在cascade_menu.html页面中未拼接ch.name故下拉框中没有数据显示。

https://img1.sycdn.imooc.com//climg/61824241098f16fe06620208.jpg

3、建议同学先创建包再创建类来编写代码,而不是直接创建类。

另外建议同学若是不同的问题无需在原问答上进行回复,可以重新创建一个问答,避免同学将不同问答的回复混淆。

祝学习愉快~

好帮手慕小小 2021-11-02 10:29:34

同学你好,出现404代表访问的资源未找到,路径错误。建议同学查看下项目的Context root是否是JQUERY。

https://img1.sycdn.imooc.com//climg/61809abf09d09a6d07000597.jpg

若与访问路径不一致则修改,若修改后仍出现404则建议同学将报错信息或报错页面以截图的方式上传至问答区,便于老师快速定位问题并给出解决方案。

祝学习愉快~

  • 提问者 眼睛眯起来 #1

    老师我用的idae项目名字是JQUERY

    2021-11-02 10:53:31
  • 好帮手慕小小 回复 提问者 眼睛眯起来 #2

    同学你好,若确保路径没问题则建议同学清除idea缓冲后重新启动服务器后再测试运行试一下。

    https://img1.sycdn.imooc.com//climg/6180a8b20979fbe502710491.jpg

    可通过如下方式查看项目的上下文路径:

    https://img1.sycdn.imooc.com//climg/6180a99d0996ef6002190068.jpg

    https://img1.sycdn.imooc.com//climg/6180a9910966043210080650.jpg

    祝学习愉快~

    2021-11-02 10:55:51
  • 提问者 眼睛眯起来 回复 好帮手慕小小 #3

    老师仍然不好使,路径全部都是对的

    2021-11-03 14:40:28
眼睛眯起来 提问者 2021-11-01 22:32:37
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师