本文整理汇总了Java中org.eclipse.jetty.server.Server.setStopAtShutdown方法的典型用法代码示例。如果您正苦于以下问题:Java Server.setStopAtShutdown方法的具体用法?Java Server.setStopAtShutdown怎么用?Java Server.setStopAtShutdown使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.jetty.server.Server
的用法示例。
在下文中一共展示了Server.setStopAtShutdown方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: startServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public static void startServer(String[] args) throws Exception {
Server server = new Server(8080);
WebAppContext ctx = new WebAppContext();
ctx.setContextPath("/");
ctx.setWar("src/main/webapp/");
HandlerCollection hc = new HandlerCollection();
hc.setHandlers(new Handler[] {ctx});
server.setHandler(hc);
server.setStopAtShutdown(true);
server.start();
server.join();
// server.removeBean(o);
// server.addBean(o);
}
示例2: main
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public static void main(String[] args) throws Exception {
Runtime.getRuntime().addShutdownHook(new ShutdownHook());
Initiator.init();
Server server = new Server(PORT);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath(CONTEXT_PATH);
server.setHandler(context);
server.setStopAtShutdown(true);
context.addServlet(new ServletHolder(new GetAllLang()), "/get_all_lang");
context.addServlet(new ServletHolder(new Compile()), "/compile");
context.addServlet(new ServletHolder(new Run()), "/run");
server.join();
server.start();
LOGGER.info("Avalon-Executive server is now running at http://127.0.0.1:" + PORT + CONTEXT_PATH);
}
示例3: createJettyServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public static Server createJettyServer(int port, String contextPath) {
Server server = new Server(port);
server.setStopAtShutdown(true);
ProtectionDomain protectionDomain = Launcher.class.getProtectionDomain();
URL location = protectionDomain.getCodeSource().getLocation();
String warFile = location.toExternalForm();
WebAppContext context = new WebAppContext(warFile, contextPath);
context.setServer(server);
// 设置work dir,war包将解压到该目录,jsp编译后的文件也将放入其中。
String currentDir = new File(location.getPath()).getParent();
File workDir = new File(currentDir, "work");
context.setTempDirectory(workDir);
server.setHandler(context);
return server;
}
示例4: createDevServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public static Server createDevServer(int port, String contextPath) {
Server server = new Server();
server.setStopAtShutdown(true);
ServerConnector connector = new ServerConnector(server);
// 设置服务端口
connector.setPort(port);
connector.setReuseAddress(false);
server.setConnectors(new Connector[] {connector});
// 设置web资源根路径以及访问web的根路径
WebAppContext webAppCtx = new WebAppContext(DEFAULT_APP_CONTEXT_PATH, contextPath);
webAppCtx.setDescriptor(DEFAULT_APP_CONTEXT_PATH + "/WEB-INF/web.xml");
webAppCtx.setResourceBase(DEFAULT_APP_CONTEXT_PATH);
webAppCtx.setClassLoader(Thread.currentThread().getContextClassLoader());
server.setHandler(webAppCtx);
return server;
}
示例5: main
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public static void main(@NotNull @NonNls String[] args) throws Exception {
PropertyConfigurator.configure(System.getProperty("user.dir") + "/log4j.properties");
logger.warn("StrictFP | Back-end");
logger.info("StrictFP Back-end is now running...");
Server server = new Server(Constant.SERVER.SERVER_PORT);
ServletContextHandler context =
new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/api/v0");
server.setHandler(context);
server.setStopAtShutdown(true);
// 像下面这行一样
context.addServlet(new ServletHolder(new GetQuiz()), "/misc/getquiz");
context.addServlet(new ServletHolder(new TimeLine()), "/timeline");
context.addServlet(new ServletHolder(new Counter()), "/misc/counter");
context.addServlet(new ServletHolder(new User()), "/user");
context.addServlet(new ServletHolder(new Heartbeat()), "/misc/heartbeat");
context.addServlet(new ServletHolder(new SafeCheck()), "/misc/safecheck");
context.addServlet(new ServletHolder(new CheckCert()), "/auth/check_cert");
//
server.start();
server.join();
}
示例6: createServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
/**
* 创建用于开发运行调试的JettyServer
* @param port 访问服务器的端口
* @param contextPath 访问服务器的地址
* @param webAppPath Web应用的目录(需指向到WebRoot目录下)
*/
private static Server createServer(int port, String contextPath, String webAppPath){
Server server = new Server();
//设置在JVM退出时关闭Jetty的钩子
//这样就可以在整个功能测试时启动一次Jetty,然后让它在JVM退出时自动关闭
server.setStopAtShutdown(true);
//ServerConnector connector = new ServerConnector(server);
SelectChannelConnector connector = new SelectChannelConnector();
connector.setPort(port);
//解决Windows下重复启动Jetty不报告端口冲突的问题
//在Windows下有个Windows + Sun的connector实现的问题,reuseAddress=true时重复启动同一个端口的Jetty不会报错
//所以必须设为false,代价是若上次退出不干净(比如有TIME_WAIT),会导致新的Jetty不能启动,但权衡之下还是应该设为False
connector.setReuseAddress(false);
server.setConnectors(new Connector[]{connector});
//为了设置reuseAddress=false所以创建Connector,否则直接new Server(port)即可,通过查看Server源码发现,二者是等效的
//不过使用Connector的好处是可以让Jetty监听多个端口,此时创建多个绑定不同端口的Connector即可,最后一起setConnectors
//Server server = new Server(port);
//server.setStopAtShutdown(true);
WebAppContext context = new WebAppContext(webAppPath, contextPath);
//解决Windows环境下Lock静态文件的问题
//Jetty运行时会锁住js、css等文件,导致不能修改保存,解决办法是修改webdefault.xml中的useFileMappedBuffer=false
//这里试了很多遍都没成功,后来注释掉这里的setDefaultsDescriptor(),也删除项目中的webdefault-windows.xml
//再重启应用,竟然可以修改保存了,后来又反复重启又试了几次竟然都可以修改保存,很是奇怪
//context.setDefaultsDescriptor("F:/Tool/Code/JavaSE/MyJettyDemo/test/webdefault-windows.xml");
server.setHandler(context);
return server;
}
示例7: createServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
@SuppressWarnings("ConstantConditions")
private static Server createServer(){
Server server = new Server();
server.setStopAtShutdown(true);
SelectChannelConnector connector = new SelectChannelConnector();
connector.setPort(port);
connector.setReuseAddress(false);
server.setConnectors(new Connector[]{connector});
String webAppPath = JettyBootStrap.class.getClassLoader().getResource(".").getFile();
webAppPath = webAppPath.substring(0, webAppPath.indexOf("target")) + "src/main/webapp";
WebAppContext context = new WebAppContext(webAppPath, contextPath);
server.setHandler(context);
return server;
}
示例8: startServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
/**
* Method for starting the Jetty server with the ATS Agent webapp.
* @param port the port on which to start the server.
* @return the started server.
* @throws IOException
*/
private static Server startServer() throws IOException {
addAppender();
final int agentPort = getAgentDefaultPort();
log.info("Starting ATS agent at port: " + agentPort);
final String jettyHome = getJettyHome();
logSystemInformation(jettyHome);
// start the server
Connector connector = new SelectChannelConnector();
connector.setPort(agentPort);
Server server = new Server();
server.setConnectors(new Connector[]{ connector });
WebAppContext webApp = new WebAppContext();
webApp.setContextPath("/agentapp");
webApp.setWar(jettyHome + "/webapp/agentapp.war");
server.setHandler(webApp);
server.setStopAtShutdown(true);
setExtraClasspath(webApp, jettyHome);
try {
server.start();
} catch (Exception e) {
e.printStackTrace();
System.exit(1);
}
log.info("ATS agent started");
return server;
}
示例9: createGitServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
private Server createGitServer(int port) throws Exception {
final Server server = new Server(port);
final ServletHandler handler = new ServletHandler();
server.setHandler(handler);
handler.addServletWithMapping(new ServletHolder(createGitServlet()), "/*");
server.start();
server.setStopAtShutdown(true);
LOGGER.info("Started serving local git repositories [" + this.repositories.values().stream().map(
LazilyLoadedRepository::getName).collect(Collectors.toList()) + "] under http://localhost:" + port);
return server;
}
示例10: createAndStartServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public static Server createAndStartServer(int port, Map<Class<? extends Servlet>, String> handlers) throws Exception {
Server server = new Server(port);
server.setStopAtShutdown(true);
ServletHandler sh = new ServletHandler();
handlers.entrySet().forEach(e -> sh.addServletWithMapping(e.getKey(), e.getValue()));
server.setHandler(sh);
server.start();
return server;
}
示例11: startServer
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
@BeforeClass
public static void startServer() throws Exception {
Server server = new Server(31245);
server.setStopAtShutdown(true);
ServletHandler handler = new ServletHandler();
handler.addServletWithMapping(CourseInfoServlet.class, "/courseUnitInfo");
handler.addServletWithMapping(CourseInfoServlet.class, "/courseUnitInfo/oulu");
server.setHandler(handler);
server.start();
}
示例12: start
import org.eclipse.jetty.server.Server; //导入方法依赖的package包/类
public void start(boolean devMode, int port) throws Exception {
Server server = new Server(new QueuedThreadPool(500));
WebAppContext appContext = new WebAppContext();
String resourceBasePath = "";
//开发者模式
if (devMode) {
String artifact = MavenUtils.get(Thread.currentThread().getContextClassLoader()).getArtifactId();
resourceBasePath = artifact + "/src/main/webapp";
}
appContext.setDescriptor(resourceBasePath + "WEB-INF/web.xml");
appContext.setResourceBase(resourceBasePath);
appContext.setExtractWAR(true);
//init param
appContext.setInitParameter("org.eclipse.jetty.servlet.Default.dirAllowed", "false");
if (CommonUtils.isWindowOs()) {
appContext.setInitParameter("org.eclipse.jetty.servlet.Default.useFileMappedBuffer", "false");
}
//for jsp support
appContext.addBean(new JettyJspParser(appContext));
appContext.addServlet(JettyJspServlet.class, "*.jsp");
appContext.setContextPath("/");
appContext.getServletContext().setExtendedListenerTypes(true);
appContext.setParentLoaderPriority(true);
appContext.setThrowUnavailableOnStartupException(true);
appContext.setConfigurationDiscovered(true);
appContext.setClassLoader(Thread.currentThread().getContextClassLoader());
ServerConnector connector = new ServerConnector(server);
connector.setHost("0.0.0.0");
connector.setPort(port);
server.setConnectors(new Connector[]{connector});
server.setAttribute("org.eclipse.jetty.server.Request.maxFormContentSize", 1024 * 1024 * 1024);
server.setDumpAfterStart(false);
server.setDumpBeforeStop(false);
server.setStopAtShutdown(true);
server.setHandler(appContext);
logger.info("[opencron] JettyLauncher starting...");
server.start();
}