@Component
public class ServerVerticle extends AbstractVerticle {
final ThymeleafTemplateEngine engine = ThymeleafTemplateEngine.create();
final Router router = Router.router(vertx);
@Autowired
ServerConfiguration serverConf;
@Override
public void start() throws Exception {
engine.setMode("LEGACYHTML5");
router.route().handler(CookieHandler.create());
router.route().handler(SessionHandler.create(LocalSessionStore.create(vertx)));
router.route(HttpMethod.GET, "/").handler(handler -> {
engine.render(handler, "templates/index.html", res -> {
if (res.succeeded()) {
handler.response().end(res.result());
} else {
handler.fail(res.cause());
}
});
});
vertx.createHttpServer().requestHandler(router::accept).listen(serverConf.getPort());
}
}