当前位置: 首页 > 知识库问答 >
问题:

如何使用嵌入式Jetty设置上下文路径?

卢宜然
2023-03-14

我把头撞到墙上了。我编写了一个小型嵌入式jetty服务器(jetty 9.4.18,jersey 1.19.4),但我无法让它尊重上下文路径和部署的REST服务。

我尝试了setContextPath,但这在ServletContextHandler上不起作用,所以我使用了WebAppContext。

Server jettyServer = new Server(9999);

// set up the web app
WebAppContext webapp = new WebAppContext();
webapp.setContextPath("/app/");
webapp.setResourceBase("web");

jettyServer.setHandler(webapp);

// add REST service
ServletHolder jerseyServlet = webapp.addServlet(ServletContainer.class, "/service/*");
final ResourceConfig resourceConfig = new ResourceConfig(RestService.class);
resourceConfig.register(MultiPartFeature.class);
jerseyServlet.setInitParameter("jersey.config.server.provider.packages", "org.futureboy.app.server.rest");

try {
    jettyServer.start();
    jettyServer.join();
} catch (Exception e) {
    e.printStackTrace();
    //jettyServer.stop();
    jettyServer.destroy();
}
ServletHolder jerseyServlet = webapp.addServlet(ServletContainer.class, "/service/*");
ServletHolder jerseyServlet = webapp.addServlet(ServletContainer.class, "/*");
@Path("/service")
public class RestService {

任何帮助都将不胜感激,因为我觉得我在这里被困在一码线上。

共有1个答案

谢雅珺
2023-03-14

为什么要Jersey服务静态内容?

这不是JAX-B服务器的角色。

做什么...

    null
    null
  • 用于提供静态内容的servlet
 类似资料:
  • 我将从Groovy脚本中启动Jetty Web服务器。Jetty的默认日志记录是stderlog。现在我想配置这个日志记录,但文档中只提到了在使用start时如何进行配置。jar方法启动Jetty。 我如何配置,更具体地说,配置旋转日志文件,与StdErrLog嵌入式码头?

  • 我是一个Spring新手,正在制作一个Spring Web应用程序(不是Spring-boot,这有多大区别?)。部署在Tomcat7服务器上。 应用程序已启动并运行。我的问题是只能通过标准URL访问: http://mycompany.com:8081/cwing-0.0.3-snapshot/index.html 以下操作不起作用:http://mycompany.com:8081/cwing

  • 我必须在tomcat 7中部署我的app.war文件。的。war文件名后面是它的版本号。这里我需要设置一个上下文路径,这样实际的url将只包含应用程序名(没有版本号)。 我的要求是,服务器中不应该有编辑.xml。 这是我的背景。xml如下所示。 context.xml放在war at /META-INF文件夹中。谁能告诉我我错在哪里?

  • 目前我正在使用启用TLS 1.2的代码: 现在我正在使用TLS 1.1,并希望将其更改为TLS 1.2。

  • 问题内容: 我正在尝试使用嵌入式Jetty构建一个简单的演示应用程序,该应用程序可以从“ html”目录提供静态文件,该目录是当前工作目录的子目录。这个想法是,带有演示jar和内容的目录可以移动到新位置,并且仍然可以使用。 我已经尝试了以下方法的变体,但是我不断得到404。 更新: 这是Jetty教程中记录的解决方案。如正确答案中所述,它使用而不是: 问题答案: 使用代替。

  • 我将Spring Boot与Jetty一起使用,当我从servletContext获取路径时。getRealPath(“/”)结果如下: 但应该像那样或至少类似于: 还有一个有趣的事实是,如果我有webapp文件夹,jetty会在其中使用这个文件夹,比如servlet context和servlet context。getRealPath(“/”)将返回正常路径。 为什么Jetty对servlet