在Jetty runner的帮助下启动服务器

在Jetty runner的帮助下启动服务器,jetty,Jetty,我所拥有的: 在main方法中启动嵌入式jetty服务器的应用程序。当我需要在服务器上移动它时,我应该制作一个myApp.jar并在服务器上启动它 我想要什么: 不要在应用程序内部启动嵌入式jetty服务器,而是创建myApp.war文件并在jetty runner的帮助下启动它 真是个问题: 在启动嵌入式服务器之前,我将WebsocketHandler设置为我的服务器,然后将ResourceHandler设置为WebsocketHandler(请参见下面的代码)。我不知道如何在jetty ru

我所拥有的:

在main方法中启动嵌入式jetty服务器的应用程序。当我需要在服务器上移动它时,我应该制作一个myApp.jar并在服务器上启动它

我想要什么: 不要在应用程序内部启动嵌入式jetty服务器,而是创建myApp.war文件并在jetty runner的帮助下启动它

真是个问题: 在启动嵌入式服务器之前,我将WebsocketHandler设置为我的服务器,然后将ResourceHandler设置为WebsocketHandler(请参见下面的代码)。我不知道如何在jetty runner命令的帮助下传递这些参数

问题:

我可以使用java-jar jetty-runner.jar contexts/my.xml吗? 如果是,我怎么做

我现在怎么做:


如果需要设置jetty,有一种方法如中所述:

java-jar jetty-runner.jar——配置my/jetty.xml my.war


如果没有,什么是
contexts/my.xml

34评论和任何评论,尽管有边界期!请描述一下为什么回答我的问题如此困难?建议你简化你的问题。消除jetty runner(这是一个很少有人使用的第三方工具,因此您会自动降低获得答案的可能性)。您一次处理的主题太多(嵌入式+jetty runner+来自war的webappcontext+自定义处理程序)。考虑把问题分解成子问题。我是说我不知道如何用WebSocketHandler和RealCuthHand来传递java(java- jar - jytTyras.jar)。我需要在xml文件中配置它们吗?我想如果它们可以使用java进行配置,您也可以使用jetty.xml进行配置。是的,实际上问题是如何使用xml文件进行配置基本上,请看语法参考:它非常强大。对于您的处理程序,创建单独的类会更容易。最新的Jetty XML语法文档不在wiki中。看见
public static void main(String[] args) {

WebSocketHandler handler = new WebSocketHandler() {
  @Override
  public void configure(WebSocketServletFactory factory) {
    factory.getPolicy().setMaxMessageSize(4533423);
    factory.getPolicy().setIdleTimeout(Long.MAX_VALUE);
    factory.setCreator(creator);
  }
};
Server server = new Server(8080);
server.setHandler(handler);
ResourceHandler resourceHandler = new ResourceHandler();
resourceHandler .setDirectoriesListed(true);
resourceHandler .setResourceBase(WEB_CLIENT_PATH);
handler.setHandler(resourceHandler );
server.start();
server.join();
}