2013-09-27 54 views
4

我有什麼:與碼頭亞軍的幫助下啓動服務器

其啓動嵌入式Jetty服務器中的主要方法的應用。當我需要在服務器上移動它時,我應該創建一個myApp.jar並在服務器上啓動它。

我想要什麼: 無法啓動嵌入式Jetty服務器應用程序內部,但要myApp.war文件,並與碼頭亞軍的幫助下開始它

什麼問題: 之前啓動嵌入式服務器我將WebSocketHandler設置到我的服務器,然後將ResourceHandler設置爲WebsocketHandler(請參閱下面的代碼)。 我不知道如何在碼頭命令的幫助下通過這些參數。

問:

我可以用Java的罐子碼頭,runner.jar上下文/ my.xml? 如果是的話,我怎麼能做到這一點

我現在該怎麼做:

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(); 
} 
+0

34評論和任何評論,儘管邊界時期!請描述爲什麼它很難回答我的問題? –

+1

建議您簡化您的問題。消除碼頭選手(它是第三方工具,不是很多人使用的,所以你會自動減少獲得答案的可能性)。您一次可以處理太多的主題(嵌入式+ jetty-runner +來自war +自定義處理程序的webappcontext)。考慮將問題分解爲子問題。 –

回答

4

如果您需要設置碼頭,存在documentation描述道:

java -jar jetty-runner.jar --config my/jetty.xml my.war

如果否,contexts/my.xml是什麼?

+0

我的意思是我不知道如何以這種方式傳遞WebSocketHandler和ResourceHandler(使用java -jar -jetty-runner.jar)。我是否需要在xml文件中配置它們? –

+0

我猜如果他們可以使用java配置,你也可以使用jetty.xml來配置它們。 – Admit

+0

是的,其實問題是如何使用xml文件的幫助來配置它們 –