2016-09-30 111 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文件。

任何幫助將不勝感激。

回答