我在netbeans中创建了新的web项目(新项目 - java web - web application || name:test || server:glassFish server 4.1.1 || JavaEE version:JavaEE 7 web || ContextPath:/ Test)
它生成html文件,我向服务器添加简单的ajax调用。
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div>TODO write content</div>
<script>
fetch('/Test/name').then(function(x){
console.log(x)
})
</script>
</body>
</html>
现在(没有脚本标签)当我运行项目时,它会让我感到震惊
localhost:8080/Test
现在我创建一个新的java类
@Path("/Test")
@Produces("text/plain")
public class RequestClass {
private String name = "MyName";
private String age = "MyAge";
@GET
@Path("/name")
@Produces("text/plain")
public String getName(){
return this.name;
}
@GET
@Path("/age")
@Produces("text/plain")
public String getAge(){
return this.age;
}
}
现在,当我构建并运行项目时,服务器以404响应
http://localhost:8080/Test/name无法加载资源:服务器响应状态为404(未找到)
为什么会这样?路线是正确的,为什么它找不到呢?
我正在尝试修复它一段时间,但找不到任何相关内容。
我尝试使用
fetch('/name').then(function(x){
console.log(x)
})
但也没有用。
感谢您的帮助!
答案 0 :(得分:3)
您的应用程序名称或应用程序上下文根目录是什么?您需要将您的应用程序上下文根目录放在URL中才能工作,例如E.g domain:port // routes,对于您的情况,它将是Apache Commons Collections
泽西岛配置
prefixMap("aaa.bbb.ccc")