0
我正在为Vertx-Web应用程序构建一个胖罐子。我想提供一些静态文件。我使用webroot文件夹打包了jar文件。见下面的截图我的罐子结构:Vertx Webroot在脂肪罐
我能够做加载Web根目录/静态/ test.html的文件:
routingContext.response().sendFile("webroot/static/test.html");
但是,我没能拿到静态处理程序工作。下面是我的全码:
package com.jdescript;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.http.HttpServer;
import io.vertx.ext.web.Router;
import io.vertx.ext.web.handler.StaticHandler;
public class WebVerticle extends AbstractVerticle {
private HttpServer httpServer;
@Override
public void start() throws IOException {
httpServer = vertx.createHttpServer();
Router router = Router.router(vertx);
router.route("/static/*").handler(StaticHandler.create());
router.route("/test").handler(routingContext -> {
routingContext.response().sendFile("webroot/static/test.html");
});
httpServer.requestHandler(router::accept).listen(9999);
}
}
在上面的例子中,http://localhost:9999/static/test.html会说“未找到”,而http://localhost:9999/test将呈现test.html文件。
任何帮助将不胜感激。