设置处理程序时Jetty Server会阻塞

时间:2018-01-17 11:59:29

标签: java http server jetty

我正在尝试使用Servlet上下文设置Jetty服务器,并在调用server.setHandler(context)时阻止。如果我从下面运行代码片段,它实际上是跟随http://www.eclipse.org/jetty/documentation/9.3.x/embedding-jetty.html#_embedding_servletcontexts的示例,它只打印一个" a"然后阻止。

ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/");

Server server = new Server(8070);
log.info("a");
server.setHandler(context);

log.info("a");
context.addServlet(EventServer.class, "/response");
context.addServlet(NotificationServer.class, "/notification");

log.info("a");
context.addEventListener(new ConfigureService());
context.addEventListener(new NotificationService());

try {
        server.start();
        log.info("Jetty-Server Started");
        server.join();
} catch (Exception e) {
        log.error(ExceptionUtils.getFullStackTrace(e));
} finally {
        server.destroy();
}

知道为什么在设置处理程序时它没有执行其余的代码和块?

1 个答案:

答案 0 :(得分:0)

事实证明,当它们是不同的版本时,您实际上可以运行jetty-serverjetty-servlet,这将在设置处理程序时导致阻止。