Java 嵌入式码头&x2B;Jersey无法获取静态资源
我编写了一个Java 嵌入式码头&x2B;Jersey无法获取静态资源,java,jersey,jetty,embedded-jetty,Java,Jersey,Jetty,Embedded Jetty,我编写了一个jettyserver.java作为启动服务,下面是代码 public class jettyserver { public static void main(String[] args) throws Exception { Server server = new Server(8080); ServletHolder servletHolder = new ServletHolder(ServletContainer.class); Map<Str
jettyserver.java
作为启动服务,下面是代码
public class jettyserver {
public static void main(String[] args) throws Exception {
Server server = new Server(8080);
ServletHolder servletHolder = new ServletHolder(ServletContainer.class);
Map<String, String> parameterMap = new HashMap<String, String>();
parameterMap.put("jersey.config.server.provider.packages", "com.heu.cs.mavenproject3");
servletHolder.setInitParameters(parameterMap);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/jettyproject/*");
context.addServlet(servletHolder, "/*");
server.setHandler(context);
server.start();
server.join();
}
}
然后我运行了jettyserver.java
,得到了如下结果:
我们可以看到好的,没错
但是当我在浏览器中输入localhost:8080/jettyproject/index.html或localhost:8080/index.html时,我得到了如下404错误:
我该怎么办?代码有什么问题??尝试更改
addServlet(servletHolder,“/*”)代码>到添加servlet(servletHolder,“/api/*”)代码>。如果您不想更改Jersey的路径基本路径,那么您需要查看Thank u,我将处理此问题,但会出现另一个问题。当我在IDEA中运行它时,它运行得很好,静态文件和动态servlet运行得很好。我打包了一个war文件,并将其放在jetty webapps目录中,然后启动jetty,但只有静态文件工作正常,发生了什么,我该怎么办?能帮我吗,非常感谢。你可以从中看到这个问题
@Path("/demo")
public class demo {
@GET
@Produces({"text/html"})
public String index(){
return "OK";
}
}