2016-09-30 67 views
0

我正在为Vertx-Web应用程序构建一个胖罐子。我想提供一些静态文件。我使用webroot文件夹打包了jar文件。见下面的截图我的罐子结构:Vertx Webroot在脂肪罐

enter image description here

我能够做加载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文件。

任何帮助将不胜感激。

回答