@Override public void start() throws Exception { HttpHandler handler = manager.start(); host.getValue().registerDeployment(manager.getDeployment(), handler); }
private Undertow createUndertowServer() throws ServletException { HttpHandler httpHandler = this.manager.start(); httpHandler = getContextHandler(httpHandler); if (this.useForwardHeaders) { httpHandler = Handlers.proxyPeerAddress(httpHandler); } if (StringUtils.hasText(this.serverHeader)) { httpHandler = Handlers.header(httpHandler, "Server", this.serverHeader); } this.builder.setHandler(httpHandler); return this.builder.build(); }
public void startContext() throws ServletException { final ClassLoader old = Thread.currentThread().getContextClassLoader(); DeploymentInfo deploymentInfo = deploymentInfoInjectedValue.getValue(); Thread.currentThread().setContextClassLoader(deploymentInfo.getClassLoader()); try { StartupContext.setInjectionContainer(webInjectionContainer); try { deploymentManager = container.getValue().getServletContainer().addDeployment(deploymentInfo); deploymentManager.deploy(); HttpHandler handler = deploymentManager.start(); Deployment deployment = deploymentManager.getDeployment(); host.getValue().registerDeployment(deployment, handler); } finally { StartupContext.setInjectionContainer(null); } } finally { Thread.currentThread().setContextClassLoader(old); } }
protected int initServer() throws Exception { DeploymentInfo servletBuilder = Servlets.deployment() .setClassLoader(getClass().getClassLoader()) .setContextPath("/") .setDeploymentName("test.war"); init(servletBuilder); DeploymentManager manager = Servlets.defaultContainer().addDeployment(servletBuilder); manager.deploy(); server = Undertow.builder() .addHttpListener(0, "127.0.0.1") .setHandler(manager.start()).build(); server.start(); return ((InetSocketAddress) server.getListenerInfo().get(0).getAddress()).getPort(); }
this.manager = defaultContainer().addDeployment(servletBuilder); this.manager.deploy(); HttpHandler httpHandler = this.manager.start(); this.server = Undertow.builder().addHttpListener(0, "localhost").setHandler(httpHandler).build();
@Override public void start() { try { pippoDeploymentManager = createPippoDeploymentManager(); HttpHandler pippoHandler = pippoDeploymentManager.start(); HttpHandler contextHandler = createContextHandler(pippoHandler); GracefulShutdownHandler rootHandler = new GracefulShutdownHandler(contextHandler); server = createServer(rootHandler); String version = server.getClass().getPackage().getImplementationVersion(); log.info("Starting Undertow Server {} on port {}", version, getSettings().getPort()); server.start(); } catch (Exception e) { throw new PippoRuntimeException(e); } }
/** * Adds an arbitrary web deployment to underlying Undertow server. This is for your own deployments * * @param builder * @return */ public UndertowJaxrsServer deploy(DeploymentInfo builder) { DeploymentManager manager = container.addDeployment(builder); manager.deploy(); try { root.addPrefixPath(builder.getContextPath(), manager.start()); } catch (ServletException e) { throw new RuntimeException(e); } return this; }
@Override public void start() throws Exception { HttpHandler handler = manager.start(); host.getValue().registerDeployment(manager.getDeployment(), handler); }
@Override public void start() throws Exception { HttpHandler handler = manager.start(); host.getValue().registerDeployment(manager.getDeployment(), handler); }
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); }
private void deploy(Coffig configuration) throws Exception { try { DeploymentManagerFactory factory = new DeploymentManagerFactory( xnioWorker, configuration, kernelParameters ); deploymentManager = factory.createDeploymentManager(); deploymentManager.deploy(); httpHandler = deploymentManager.start(); } catch (RuntimeException e) { unwrapUndertowException(e); } }
public void startContext() throws ServletException { final ClassLoader old = Thread.currentThread().getContextClassLoader(); DeploymentInfo deploymentInfo = deploymentInfoInjectedValue.getValue(); Thread.currentThread().setContextClassLoader(deploymentInfo.getClassLoader()); try { StartupContext.setInjectionContainer(webInjectionContainer); try { deploymentManager = container.getValue().getServletContainer().addDeployment(deploymentInfo); deploymentManager.deploy(); HttpHandler handler = deploymentManager.start(); Deployment deployment = deploymentManager.getDeployment(); host.getValue().registerDeployment(deployment, handler); } finally { StartupContext.setInjectionContainer(null); } } finally { Thread.currentThread().setContextClassLoader(old); } }
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 ServletContext buildServletContext(String contextName) throws ServletException { ServletContainer servletContainer = new ServletContainerImpl(); DeploymentInfo deploymentInfo = new DeploymentInfo(); deploymentInfo.setClassLoader(Thread.currentThread().getContextClassLoader()); deploymentInfo.setDeploymentName("cxf-undertow"); deploymentInfo.setContextPath(contextName); ServletInfo asyncServlet = new ServletInfo(ServletPathMatches.DEFAULT_SERVLET_NAME, CxfUndertowServlet.class); deploymentInfo.addServlet(asyncServlet); servletContainer.addDeployment(deploymentInfo); DeploymentManager deploymentManager = servletContainer.getDeployment(deploymentInfo.getDeploymentName()); deploymentManager.deploy(); deploymentManager.start(); return deploymentManager.getDeployment().getServletContext(); }
private EncodingHandler getGzipEncodeHandler(final DeploymentManager dm) throws ServletException{ // FROM: https://stackoverflow.com/questions/28295752/compressing-undertow-server-responses#28329810 final Predicate sizePredicate = Predicates.parse( "max-content-size[" + Long.toString( 5 * 1024 ) + "]" ); EncodingHandler eh = new EncodingHandler( new ContentEncodingRepository().addEncodingHandler( "gzip", new GzipEncodingProvider(), 50, sizePredicate ) .addEncodingHandler( "deflate", new DeflateEncodingProvider(), 51, sizePredicate ) ).setNext( dm.start() ); return eh; }
private ServletContext buildServletContext(String contextName) throws ServletException { ServletContainer servletContainer = new ServletContainerImpl(); DeploymentInfo deploymentInfo = new DeploymentInfo(); deploymentInfo.setClassLoader(Thread.currentThread().getContextClassLoader()); deploymentInfo.setDeploymentName("cxf-undertow"); deploymentInfo.setContextPath(contextName); ServletInfo asyncServlet = new ServletInfo(ServletPathMatches.DEFAULT_SERVLET_NAME, CxfUndertowServlet.class); deploymentInfo.addServlet(asyncServlet); servletContainer.addDeployment(deploymentInfo); DeploymentManager deploymentManager = servletContainer.getDeployment(deploymentInfo.getDeploymentName()); deploymentManager.deploy(); deploymentManager.start(); return deploymentManager.getDeployment().getServletContext(); }
protected void deployServlet(final DeploymentInfo deploymentInfo) { DeploymentManager manager = ServletContainer.Factory.newInstance().addDeployment(deploymentInfo); manager.deploy(); deployment = manager.getDeployment(); try { injectedHost.getValue().registerDeployment(deployment, manager.start()); } catch (ServletException e) { RTSLogger.ROOT_LOGGER.warn(e.getMessage(), e); deployment = null; } }
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(); }
@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); } }