java - 如何使用嵌入式 jetty 在给定地址提供特定类路径资源?

标签 java jetty embedded-jetty

我正在寻找从嵌入式 jetty 服务器公开 clientacesspolicy.xml 文件。

我目前的尝试是这样的:

ContextHandler capHandler = new ContextHandler();
capHandler.setContextPath("/clientaccesspolicy.xml");
capHandler.setBaseResource(Resource.newClassPathResource("clientaccesspolicy.xml"));
HandlerList handlers = new HandlerList();
handlers.addHandler(capHandler);
...
httpServer.setHandler(handlers);

但是我在访问 http://localhost:9000/clientaccesspolicy.xml 时得到 404

如何在 Jetty 中以编程方式将类路径资源公开给给定的 URL?

谢谢, 安迪

最佳答案

实际上,您可以将类路径注册为类路径资源(令人惊讶)。

ResourceHandler resHandler = new ResourceHandler();
resHandler.setBaseResource(Resource.newClassPathResource("/"));
server.setHandler(resHandler);

然后您可以访问类路径中的任何文件。因此,如果您有一个 file.xml,它将从 localhost:9000/file.xml 提供。

关于java - 如何使用嵌入式 jetty 在给定地址提供特定类路径资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9112599/

相关文章:

java - 放大 android - 保持图像可见

java - Jetty 在多个 TCP 端口上发布端点

Java类图

java - Android不同屏幕下的ImageButton

java - 将 Jetty 与 JAX-RS-Jersey 集成

java - Jetty 重定向和上下文路径

java - 获取 HTTP 错误 : 500 on get response Json Object from glassfish Jersey Rest server

java - 在 Eclipse 中运行 wicket 项目时绑定(bind)异常

Centos 5 中 Java 服务器启动时挂起

java - 使用 Spring Boot 和 WebSphere 9.0.0.7 进行 JNDI 配置