Java Glassfish服务器在应该找到页面的路径上显示错误404

Java Glassfish服务器在应该找到页面的路径上显示错误404,java,gradle,intellij-idea,jersey,glassfish,Java,Gradle,Intellij Idea,Jersey,Glassfish,我正在使用Intellij和Glassfish服务器开发一个web应用程序。但是,它显示错误404,未找到页面。具体而言: HTTP状态404-未找到 类型状态报告 找不到消息 说明请求的资源不可用。 GlassFish服务器开源版4.1.1 我无法理解为什么会发生这种情况。我正在和格雷德尔一起做这件事 我首先使用web.xml,然后扩展应用程序,但在这两种情况下,结果是相同的 我尝试了类似问题的解决方案,但没有一个奏效 这是根资源代码: package com.pd.jersey.jaxb;

我正在使用Intellij和Glassfish服务器开发一个web应用程序。但是,它显示错误404,未找到页面。具体而言:

HTTP状态404-未找到
类型状态报告
找不到消息
说明请求的资源不可用。
GlassFish服务器开源版4.1.1
我无法理解为什么会发生这种情况。我正在和格雷德尔一起做这件事

我首先使用
web.xml
,然后扩展
应用程序
,但在这两种情况下,结果是相同的

我尝试了类似问题的解决方案,但没有一个奏效

这是根资源代码:

package com.pd.jersey.jaxb;
导入javax.ws.rs.GET;
导入javax.ws.rs.Path;
导入javax.ws.rs.products;
导入javax.ws.rs.core.MediaType;
@路径(“/”)
类根资源{
@得到
@生成(MediaType.TEXT\u PLAIN)
公共字符串hello(){
回复“你好”;
}
}
这是Todo资源:

package com.pd.jersey.jaxb;
导入javax.ws.rs.GET;
导入javax.ws.rs.Path;
导入javax.ws.rs.products;
导入javax.ws.rs.core.MediaType;
@路径(“/todo”)
公共类TodoResource{
@得到
@产生({MediaType.APPLICATION_XML})
公共Todo getXML(){
Todo Todo=新Todo();
setSummary(“应用程序XML todo摘要”);
setDescription(“应用程序XML todo描述”);
返回待办事项;
}
//如果请求JSON,则调用此方法
@得到
@产生({MediaType.APPLICATION_JSON})
公共Todo getJSON(){
Todo Todo=新Todo();
todo.setSummary(“应用程序JSON todo摘要”);
setDescription(“应用程序JSON todo描述”);
返回待办事项;
}
//这可用于测试与浏览器的集成
@得到
@产生({MediaType.TEXT_XML})
公共Todo getHTML(){
Todo Todo=新Todo();
todo.setSummary(“XML todo Summary”);
setDescription(“XML todo描述”);
返回待办事项;
}
}
这是应用程序代码:

package com.pd.jersey.jaxb;
导入javafx.application.application;
导入javafx.stage.stage;
导入javax.ws.rs.ApplicationPath;
导入java.util.HashSet;
导入java.util.Set;
@应用程序路径(“/rest”)
公共类重新启动应用程序扩展了应用程序{
//所有请求范围的资源和提供程序
public Set>classes=new HashSet();
添加(TodoResource.class);
返回类;
}
//所有单例资源和提供者
公共集getSingleton(){
Set singleton=newhashset();
返回单身人士;
}
@凌驾
public void start(Stage primaryStage)引发异常{
}
}
这是我的跑步配置的屏幕截图:


我似乎没发现出了什么问题。非常感谢您的帮助。

您覆盖了错误的
应用程序。您正在使用的是JavaFX,它用于制作图形用户界面。你需要扩展。这就是为什么在重写方法时应始终使用
@Override
;因此,您知道您实际上正在重写类中的一个方法(即
getClasses()
getSingletons()
)。如果添加了
@Override
,您会发现它不是您正在使用的
应用程序中的方法