public static void main(String[] args) throws Exception { Server server = new Server(); SelectChannelConnector connector0 = new SelectChannelConnector(); connector0.setPort(8080); connector0.setMaxIdleTime(30000); connector0.setRequestHeaderSize(8192); SelectChannelConnector connector1 = new SelectChannelConnector(); connector1.setHost("127.0.0.1"); connector1.setPort(8888); connector1.setThreadPool(new QueuedThreadPool(20)); connector1.setName("admin"); SslSelectChannelConnector ssl_connector = new SslSelectChannelConnector(); String jetty_home = System.getProperty("jetty.home", "../jetty-distribution/target/distribution"); System.setProperty("jetty.home", jetty_home); ssl_connector.setPort(8443); SslContextFactory cf = ssl_connector.getSslContextFactory(); cf.setKeyStorePath(jetty_home + "/etc/keystore"); cf.setKeyStorePassword("OBF:1vny1zlo1x8e1vnw1vn61x8g1zlu1vn4"); cf.setKeyManagerPassword("OBF:1u2u1wml1z7s1z7a1wnl1u2g"); server.setConnectors(new Connector[] {connector0, connector1, ssl_connector}); server.setHandler(new HelloHandler()); server.start(); server.join(); }
public SimpleHttpHandler() { this.server = new Server(); SelectChannelConnector connector0 = new SelectChannelConnector(); connector0.setPort(8888); connector0.setMaxIdleTime(30000); connector0.setRequestHeaderSize(8192); SelectChannelConnector connector1 = new SelectChannelConnector(); connector1.setHost("127.0.0.1"); connector1.setPort(8843); connector1.setThreadPool(new QueuedThreadPool(20)); connector1.setName("admin"); server.setConnectors(new Connector[] {connector0, connector1}); server.setHandler(this); }
public static void main(String[] args) throws Exception { // load main configuration String configLoc = System.getProperty(CONFIG_LOCATION_SYS_VAR, CONFIG_LOCATION_DEFAULT); System.setProperty(CONFIG_LOCATION_SYS_VAR, configLoc); Properties configProps = new Properties(); try { configProps.load(new FileInputStream(ResourceUtils.getFile(configLoc))); logger.info("Successfully loaded main configuration."); } catch (Exception ex) { logger.error("Fail to start in early part", ex); throw ex; } Config config = new Config(configProps); // load log4j configuration // @todo review the effect and final configuration when -Dlog4j.properties is specified with // command line String log4jConfigLoc = config.getValue(ItemMeta.BOOTSTRAP_LOG4J_CONFIG_LOCATION); if (log4jConfigLoc != null) { Properties log4jConfig = new Properties(); try { log4jConfig.load(new FileInputStream(ResourceUtils.getFile(log4jConfigLoc))); org.apache.log4j.LogManager.resetConfiguration(); org.apache.log4j.PropertyConfigurator.configure(log4jConfig); logger.info("Successfully loaded log4j configuration at {}", log4jConfigLoc); } catch (Exception ex) { logger.error("Faile to load specified log4j configuration", ex); throw ex; } } ServletContextHandler sch = new ServletContextHandler(ServletContextHandler.SECURITY | ServletContextHandler.SESSIONS); sch.setContextPath(config.getValue(ItemMeta.ROOT_SERVLET_CONTEXT_PATH)); sch.getSessionHandler() .getSessionManager() .setSessionCookie(config.getValue(ItemMeta.ROOT_SERVLET_SESSION_ID)); ServletHolder dsh = sch.addServlet(DefaultServlet.class, "/"); dsh.setInitOrder(1); ServletHolder jsh = new ServletHolder(JerseySpringServlet.class); jsh.setInitParameter( JerseySpringServlet.INIT_PARM_SPRING_CONFIG_LOCATION, config.getValue(ItemMeta.BOOTSTRAP_SPRING_CONFIG_LOCATION)); // Refer https://jersey.java.net/apidocs/1.18/jersey/index.html?constant-values.html jsh.setInitParameter(JSONConfiguration.FEATURE_POJO_MAPPING, "true"); jsh.setInitParameter( ResourceConfig.PROPERTY_CONTAINER_REQUEST_FILTERS, "com.sun.jersey.api.container.filter.LoggingFilter"); jsh.setInitParameter( ResourceConfig.PROPERTY_CONTAINER_RESPONSE_FILTERS, "com.sun.jersey.api.container.filter.LoggingFilter"); jsh.setInitParameter(ResourceConfig.FEATURE_TRACE, "true"); // jsh.setInitParameter(JSONMarshaller.FORMATTED, "true"); // jsh.setInitParameter(FeaturesAndProperties.FEATURE_FORMATTED, "true"); // jsh.setInitParameter(FeaturesAndProperties.FEATURE_XMLROOTELEMENT_PROCESSING, "true"); sch.addServlet(jsh, config.getValue(ItemMeta.JERSEY_SERVLET_URL_PATTEN)); jsh.setInitOrder(config.getIntValue(ItemMeta.JERSEY_SERVLET_INIT_ORDER)); // For more, refer // http://download.eclipse.org/jetty/stable-7/apidocs/index.html?org/eclipse/jetty/servlets/CrossOriginFilter.html FilterHolder fh = new FilterHolder(CrossOriginFilter.class); fh.setName("crossOriginFilter"); fh.setInitParameter( CrossOriginFilter.ALLOWED_ORIGINS_PARAM, config.getValue(ItemMeta.CROSS_ORIGIN_FILTER_ALLOWED_ORIGINS)); fh.setInitParameter( CrossOriginFilter.ALLOWED_METHODS_PARAM, config.getValue(ItemMeta.CROSS_ORIGIN_FILTER_ALLOWED_METHODS)); fh.setInitParameter( CrossOriginFilter.ALLOWED_HEADERS_PARAM, config.getValue(ItemMeta.CROSS_ORIGIN_FILTER_ALLOWED_HEADERS)); sch.addFilter(fh, "/*", FilterMapping.DEFAULT); Server jetty = new Server(); HandlerList hl = new HandlerList(); hl.addHandler(sch); jetty.setHandler(hl); jetty.setThreadPool( new QueuedThreadPool(config.getIntValue(ItemMeta.WEB_SERVER_THREAD_POOL_SIZE))); SelectChannelConnector conn = new SelectChannelConnector(); conn.setPort(config.getIntValue(ItemMeta.WEB_SERVER_PORT)); conn.setMaxIdleTime(config.getIntValue(ItemMeta.WEB_SERVER_MAX_IDLE_TIME)); MBeanContainer mbc = new MBeanContainer(ManagementFactory.getPlatformMBeanServer()); mbc.setDomain(config.getValue(ItemMeta.JMX_DOMAIN) + ".jetty"); jetty.getContainer().addEventListener(mbc); jetty.addBean(mbc); jetty.addConnector(conn); jetty.setStopAtShutdown(true); try { jetty.start(); logger.info("Jetty started at port {} on {}", conn.getPort(), "127.0.0.1"); } catch (Exception ex) { logger.error("Fail to start Jetty.", ex); System.exit(-1); } }
public void start(final int port, IRascalMonitor monitor) throws Exception { monitor.startJob("Loading Course Manager"); eval.eval(monitor, "import " + "CourseManager" + ";", URIUtil.rootScheme("stdin")); monitor.endJob(true); Log.setLog( new Logger() { @Override public String getName() { return "no logger"; } @Override public void warn(String msg, Object... args) {} @Override public void warn(Throwable thrown) {} @Override public void warn(String msg, Throwable thrown) {} @Override public void info(String msg, Object... args) {} @Override public void info(Throwable thrown) {} @Override public void info(String msg, Throwable thrown) {} @Override public boolean isDebugEnabled() { return false; } @Override public void setDebugEnabled(boolean enabled) {} @Override public void debug(String msg, Object... args) {} @Override public void debug(Throwable thrown) {} @Override public void debug(String msg, Throwable thrown) {} @Override public Logger getLogger(String name) { return this; } @Override public void ignore(Throwable ignored) {} }); monitor.startJob("Starting Webserver"); server = new Server(); SelectChannelConnector connector = new SelectChannelConnector(); connector.setPort(port); connector.setMaxIdleTime(30000); connector.setResponseHeaderSize(1000 * 1000); connector.setRequestBufferSize(1000 * 1000); connector.setConfidentialPort(8443); server.setConnectors(new Connector[] {connector}); server.setHandler(getTutorHandler()); server.start(); monitor.endJob(true); }