我们想要一个简单的嵌入式 Jetty servelet,其 Web 资源位于 JAR 文件的资源文件夹中。我们在 JAR 中有一些属性文件,并使用资源路径加载它们。我们希望将 Jetty Resource Base 指定为:
- 资源/网络应用
- 设置:resource_handler。setResourceBase ( "webapp" )
- 通过正确的 URL 指向JAR 文件中的该资源。
JAR 文件中的文件夹。这是一个简单的 JAR 文件(不是 WAR,没有框架,没有 Spring,尽管我们可能是最原始的)。初始测试继续为以下字符串引发异常:
webPath = "jar:file:!/webapp"; //.... runs the Jetty server
...
resource_handler.setResourceBase( webPath );
虽然服务器似乎在运行,但结果找不到我的 index.html。(更新:)这个例子只是取自码头“嵌入式文件服务器”的例子。在这种情况下,要求 Jetty资源库映射到 JAR 文件(完整 URL):
- "jar:file:!/webapp/index.html",
如下:
- resource_handler.setResourceBase(" jar:file:!/webapp ");
而不是给出的示例:
- resource_handler.setResourceBase(".");
我们希望它将浏览器 URL 映射为:
- 本地主机:8080/index.html
- ...给...
- jar:file:!/webapp/index.html
为了对比适用于以下配置文件的 JAR 路径。问题:URL 应该是什么,这样 Jetty 资源库才能为我的 Index.html 文件提供服务?
- 资源/
- 配置/
- 显示属性
- 配置/
文件是:“/config/display.properties”,这适用于使用加载资源操作的相同项目代码。布局是这样的:
app.jar
+----- com /
| +--- ( classes ... )
|
+----- config /
| |
| +--- display.properties
|
+----- webapp /
|
+--- index.html
给出总体思路。
类似的问题: