@Override public void start() throws Exception { // Build the Jax-RS hello world deployment VertxResteasyDeployment deployment = new VertxResteasyDeployment(); deployment.start(); deployment.getRegistry().addPerInstanceResource(HelloWorldService.class); // Start the front end server using the Jax-RS controller vertx.createHttpServer() .requestHandler(new VertxRequestHandler(vertx, deployment)) .listen(8080, ar -> { System.out.println("Server started on port "+ ar.result().actualPort()); }); } }
@Override public void start() throws Exception { // Build the Jax-RS controller deployment VertxResteasyDeployment deployment = new VertxResteasyDeployment(); deployment.start(); deployment.getRegistry().addPerInstanceResource(Controller.class); // Start the front end server using the Jax-RS controller vertx.createHttpServer() .requestHandler(new VertxRequestHandler(vertx, deployment)) .listen(8080, ar -> { System.out.println("Server started on port "+ ar.result().actualPort()); }); } }
@Test public void testRandomPorts() throws Exception { int numServers = 10; Set<Integer> ports = Collections.synchronizedSet(new HashSet<>()); AtomicInteger count = new AtomicInteger(); for (int i = 0;i < numServers;i++) { vertx.createHttpServer().requestHandler(req -> { req.response().end(); }).listen(0, DEFAULT_HTTP_HOST, onSuccess(s -> { int port = s.actualPort(); ports.add(port); client.getNow(port, DEFAULT_HTTP_HOST, "/somepath", resp -> { if (count.incrementAndGet() == numServers) { assertEquals(numServers, ports.size()); testComplete(); } }); })); } await(); }
@Test public void testServerActualPortWhenSet() { server .requestHandler(request -> { request.response().end("hello"); }) .listen(ar -> { assertEquals(ar.result().actualPort(), DEFAULT_HTTP_PORT); vertx.createHttpClient(createBaseClientOptions()).getNow(ar.result().actualPort(), DEFAULT_HTTP_HOST, "/", onSuccess(response -> { assertEquals(response.statusCode(), 200); response.bodyHandler(body -> { assertEquals(body.toString("UTF-8"), "hello"); testComplete(); }); })); }); await(); }
req.response().end(); }).listen(onSuccess(s -> { assertEquals(DEFAULT_HTTP_PORT, s.actualPort()); latchListen.countDown(); }));
server.requestHandler(router).listen((ar) -> { if (ar.succeeded()) { logger.info("Server started on port " + ar.result().actualPort()); future.complete(); } else {
@Test public void testServerActualPortWhenZero() { server = vertx.createHttpServer(createBaseServerOptions().setPort(0).setHost(DEFAULT_HTTP_HOST)); server .requestHandler(request -> { request.response().end("hello"); }) .listen(ar -> { assertTrue(ar.result().actualPort() != 0); vertx.createHttpClient(createBaseClientOptions()).getNow(ar.result().actualPort(), DEFAULT_HTTP_HOST, "/", onSuccess(response -> { assertEquals(response.statusCode(), 200); response.bodyHandler(body -> { assertEquals(body.toString("UTF-8"), "hello"); testComplete(); }); })); }); await(); }
@Test public void testServerActualPortWhenZeroPassedInListen() { server = vertx.createHttpServer(new HttpServerOptions(createBaseServerOptions()).setHost(DEFAULT_HTTP_HOST)); server .requestHandler(request -> { request.response().end("hello"); }) .listen(0, ar -> { assertTrue(ar.result().actualPort() != 0); vertx.createHttpClient(createBaseClientOptions()).getNow(ar.result().actualPort(), DEFAULT_HTTP_HOST, "/", onSuccess(response -> { assertEquals(response.statusCode(), 200); response.bodyHandler(body -> { assertEquals(body.toString("UTF-8"), "hello"); testComplete(); }); })); }); await(); }
private void startListen(HttpServer server, Future<Void> startFuture) { server.listen(endpointObject.getPort(), endpointObject.getHostOrIp(), ar -> { if (ar.succeeded()) { LOGGER.info("rest listen success. address={}:{}", endpointObject.getHostOrIp(), ar.result().actualPort()); startFuture.complete(); return; } String msg = String.format("rest listen failed, address=%s:%d", endpointObject.getHostOrIp(), endpointObject.getPort()); LOGGER.error(msg, ar.cause()); startFuture.fail(ar.cause()); }); }
protected void testSyncRequest(String httpMethod, String path, int statusCode, String statusMessage, String responseBody) throws IOException { HttpURLConnection connection = (HttpURLConnection) new URL("http://localhost:" + this.server.actualPort() + path).openConnection(); connection.setRequestMethod(httpMethod);
@Test public void testRandomPorts() throws Exception { int numServers = 10; Set<Integer> ports = Collections.synchronizedSet(new HashSet<>()); AtomicInteger count = new AtomicInteger(); for (int i = 0;i < numServers;i++) { vertx.createHttpServer().requestHandler(req -> { req.response().end(); }).listen(0, DEFAULT_HTTP_HOST, onSuccess(s -> { int port = s.actualPort(); ports.add(port); client.getNow(port, DEFAULT_HTTP_HOST, "/somepath", resp -> { if (count.incrementAndGet() == numServers) { assertEquals(numServers, ports.size()); testComplete(); } }); })); } await(); }
@Test public void testServerActualPortWhenSet() { server .requestHandler(request -> { request.response().end("hello"); }) .listen(ar -> { assertEquals(ar.result().actualPort(), DEFAULT_HTTP_PORT); vertx.createHttpClient(createBaseClientOptions()).getNow(ar.result().actualPort(), DEFAULT_HTTP_HOST, "/", response -> { assertEquals(response.statusCode(), 200); response.bodyHandler(body -> { assertEquals(body.toString("UTF-8"), "hello"); testComplete(); }); }); }); await(); }
int getActualPort() { if (httpServer != null) { return httpServer.actualPort(); } else { return listenPort; } }
/** * The actual port the server is listening on. This is useful if you bound the server specifying 0 as port number * signifying an ephemeral port * @return the actual port the server is listening on. */ public int actualPort() { int ret = delegate.actualPort(); return ret; }
/** * The actual port the server is listening on. This is useful if you bound the server specifying 0 as port number * signifying an ephemeral port * @return the actual port the server is listening on. */ public int actualPort() { int ret = delegate.actualPort(); return ret; }
req.response().end(); }).listen(onSuccess(s -> { assertEquals(DEFAULT_HTTP_PORT, s.actualPort()); latchListen.countDown(); }));
@Test public void testServerActualPortWhenZeroPassedInListen() { server = vertx.createHttpServer(new HttpServerOptions(createBaseServerOptions()).setHost(DEFAULT_HTTP_HOST)); server .requestHandler(request -> { request.response().end("hello"); }) .listen(0, ar -> { assertTrue(ar.result().actualPort() != 0); vertx.createHttpClient(createBaseClientOptions()).getNow(ar.result().actualPort(), DEFAULT_HTTP_HOST, "/", response -> { assertEquals(response.statusCode(), 200); response.bodyHandler(body -> { assertEquals(body.toString("UTF-8"), "hello"); testComplete(); }); }); }); await(); }
@Test public void testServerActualPortWhenZero() { server = vertx.createHttpServer(createBaseServerOptions().setPort(0).setHost(DEFAULT_HTTP_HOST)); server .requestHandler(request -> { request.response().end("hello"); }) .listen(ar -> { assertTrue(ar.result().actualPort() != 0); vertx.createHttpClient(createBaseClientOptions()).getNow(ar.result().actualPort(), DEFAULT_HTTP_HOST, "/", response -> { assertEquals(response.statusCode(), 200); response.bodyHandler(body -> { assertEquals(body.toString("UTF-8"), "hello"); testComplete(); }); }); }); await(); }
private void startWebsite(Future<Void> start, Router router) { setupStatusService().requestHandler(router::accept).listen(Configuration.getWebPort(), done -> { if (done.succeeded()) { Configuration.setWebPort(done.result().actualPort()); logger.info("Started website on port " + Configuration.getWebPort()); start.complete(); } else { start.fail(done.cause()); } }); }
public void start() { start(event -> { if (event.succeeded()) LOGGER.info("Server started on port : " + event.result().actualPort()); else LOGGER.error("Failed to start server", event.cause()); }); }