2016-09-30 5 views
0

私は、Vertx-Webアプリケーション用のファットジャーを構築しています。いくつかの静的ファイルを提供したいと思います。 jarファイルをwebrootフォルダとともにパッケージ化しました。私のjarファイル構造のためのスクリーンショット以下を参照してください。Vertx Webroot in Fat Jar

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/test test.htmlというレンダリングする一方、http://localhost:9999/static/test.htmlは、「見つかりません」と言うだろう。

ご協力いただければ幸いです。

答えて

関連する問題