protected HttpHandler createContextHandler(HttpHandler pippoHandler) { String contextPath = getSettings().getContextPath(); // create a handler than redirects non-contact requests to the context PathHandler contextHandler = Handlers.path(Handlers.redirect(contextPath)); // add the handler with the context prefix contextHandler.addPrefixPath(contextPath, pippoHandler); return contextHandler; }
static void deployServlets(final Builder builder , final DeploymentInfo deploymentInfo) throws ServletException { final ServletContainer servletContainer = defaultContainer(); final DeploymentManager manager = servletContainer.addDeployment(deploymentInfo); manager.deploy(); final HttpHandler servletHandler = manager.start(); final PathHandler pathServlet = Handlers .path(Handlers.redirect(MYAPP)) .addPrefixPath(MYAPP , servletHandler); final String realServletPort = System.getProperty(SERVLET_PORT_PROPERTY , DEFAULT_SERVLET_PORT + ""); final String realServletHost = System.getProperty(SERVLET_HOST_PROPERTY , Main.DEFAULT_HOST); builder.addHttpListener(Integer.parseInt(realServletPort) , realServletHost , pathServlet); }
protected void startImpl() { try { fathomDeploymentManager = createFathomDeploymentManager(); HttpHandler fathomHandler = fathomDeploymentManager.start(); String contextPath = settings.getContextPath(); // create a handler than redirects non-context requests to the context PathHandler contextHandler = Handlers.path(Handlers.redirect(contextPath)); // add the handler with the context prefix contextHandler.addPrefixPath(contextPath, fathomHandler); GracefulShutdownHandler rootHandler = new GracefulShutdownHandler(contextHandler); server = createServer(rootHandler); String version = server.getClass().getPackage().getImplementationVersion(); log.info("Starting Undertow {}", version); server.start(); } catch (Exception e) { throw new FathomException(e); } }
private Undertow configureUndertow(MockitoSpringWebApplicationContext context, URL url) throws ServletException { // https://github.com/yarosla/spring-undertow/blob/master/src/main/java/ys/undertow/UndertowMain.java DeploymentInfo servletBuilder = Servlets.deployment() .setClassLoader(Undertow.class.getClassLoader()) .setContextPath(url.getPath()) .setDeploymentName("mock") .addServlet(createDispatcherServlet(context)) .addListener(createContextLoaderListener(context)); DeploymentManager manager = Servlets.defaultContainer().addDeployment(servletBuilder); manager.deploy(); PathHandler path = Handlers.path(Handlers.redirect("/")) .addPrefixPath(CONTEXT_PATH, manager.start()); return Undertow.builder() .addHttpListener(url.getPort(), url.getHost()) .setHandler(path) .build(); }
PathHandler path = Handlers.path(Handlers.redirect("/")) .addPrefixPath("/", manager.start());
@Override public ServerInstance init(ServerDescriptor descriptor, DeploymentInfo deploymentInfo) { try { DeploymentManager manager = Servlets.defaultContainer() .addDeployment(deploymentInfo); manager.deploy(); HttpHandler httpHandler = manager.start(); RedirectHandler defaultHandler = Handlers.redirect(deploymentInfo.getContextPath()); PathHandler pathHandler = Handlers.path(defaultHandler); pathHandler.addPrefixPath(deploymentInfo.getContextPath(), httpHandler); Undertow undertow = Undertow.builder() .addHttpListener(0, deploymentInfo.getHostName(), pathHandler) .build(); return new UndertowServerInstance(undertow, deploymentInfo); } catch (Exception e) { throw new IllegalStateException(e); } }
@Override public ServerInstance init(ServerDescriptor descriptor, DeploymentInfo deploymentInfo) { try { DeploymentManager manager = Servlets.defaultContainer() .addDeployment(deploymentInfo); manager.deploy(); HttpHandler httpHandler = manager.start(); RedirectHandler defaultHandler = Handlers.redirect(deploymentInfo.getContextPath()); PathHandler pathHandler = Handlers.path(defaultHandler); pathHandler.addPrefixPath(deploymentInfo.getContextPath(), httpHandler); Undertow undertow = Undertow.builder() .addHttpListener(0, deploymentInfo.getHostName(), pathHandler) .build(); return new UndertowServerInstance(undertow, deploymentInfo); } catch (Exception e) { throw new IllegalStateException(e); } }
Undertow createServer(HttpHandler httpHandler, SSLProvider sslProvider) { PathHandler path = Handlers .path(Handlers.redirect(serverConfig.getContextPath())) .addPrefixPath(serverConfig.getContextPath(), httpHandler); Undertow.Builder builder = Undertow.builder().setWorker(xnioWorker); if (serverConfig.isHttps()) { builder = configureHttps(builder, sslProvider); } else { builder = configureHttp(builder); } if (serverConfig.isHttp2()) { LOGGER.info("HTTP/2 support is enabled"); builder.setServerOption(UndertowOptions.ENABLE_HTTP2, serverConfig.isHttp2()); } return builder.setHandler(path).build(); }
HttpHandler handler = Handlers.path(Handlers.redirect("/")) .addPrefixPath("/", deployment.start()); if (config.getAccessLogPath().isPresent()) {
try { HttpHandler servletHandler = deploymentManager.start(); PathHandler path = path(Handlers.redirect("/")) .addPrefixPath("/", servletHandler); Builder undertowBuilder = Undertow.builder()
pathHandler = Handlers.path(servletHandler); } else { pathHandler = Handlers.path(Handlers.redirect(contextPath)).addPrefixPath(contextPath, servletHandler);
try { HttpHandler servletHandler = deploymentManager.start(); PathHandler path = path(Handlers.redirect("/")) .addPrefixPath("/", servletHandler); Builder undertowBuilder = Undertow.builder()
String path = deploymentInfo.getContextPath(); RedirectHandler defaultHandler = Handlers.redirect(path); PathHandler pathHandler = Handlers.path(defaultHandler); pathHandler.addPrefixPath(path, httpHandler);
public static void main(final String[] args) throws Exception { assertJavaVersion8(); DeploymentInfo servletBuilder = deployment() .setClassLoader(HelloWorldServlet.class.getClassLoader()) .setContextPath(MYAPP) .setDeploymentName("hello-world.war") .addServlets( servlet("HelloWorldServlet", HelloWorldServlet.class) .addInitParam("message", "Hello World") .addMapping("/api/hello-world")); DeploymentManager manager = defaultContainer().addDeployment(servletBuilder); manager.deploy(); HttpHandler servletHandler = manager.start(); PathHandler path = Handlers.path(Handlers.redirect(MYAPP)) .addPrefixPath(MYAPP, servletHandler); String bindAddress = System.getProperty("bind.address", "localhost"); SSLContext sslContext = createSSLContext(loadKeyStore("server.keystore"), loadKeyStore("server.truststore")); Undertow server = Undertow.builder() .setServerOption(UndertowOptions.ENABLE_HTTP2, true) .addHttpsListener(8443, bindAddress, sslContext) .setHandler(path) .build(); server.start(); }
protected void run() { try { final DeploymentInfo servletBuilder = deployment() .setClassLoader(AbstractUndertowServer.class.getClassLoader()) .setContextPath(contextPath) .setDeploymentName("sse-test") .addServlets( servlet("MessageServlet", CXFNonSpringJaxrsServlet.class) .addInitParam("jaxrs.providers", JacksonJsonProvider.class.getName()) .addInitParam("jaxrs.serviceClasses", BookStore.class.getName()) .setAsyncSupported(true) .setLoadOnStartup(1) .addMapping("/rest/*") ); final DeploymentManager manager = defaultContainer().addDeployment(servletBuilder); manager.deploy(); PathHandler path = Handlers .path(Handlers.redirect("/")) .addPrefixPath("/", manager.start()); server = Undertow.builder() .addHttpListener(port, "localhost") .setHandler(path) .build(); server.start(); } catch (final Exception ex) { ex.printStackTrace(); fail(ex.getMessage()); } }