我正在使用在 xml 中配置的码头服务器,如下所示:http ://wiki.eclipse.org/Jetty/Reference/jetty.xml
我需要能够使用 java 代码关闭此服务器,但我不知道如何检索服务器的句柄。我完全不知道如何做到这一点,而且这几天一直困扰着我。任何见解,即使只是一些可能有用的阅读材料,都值得赞赏。
如果需要,请索取更多信息。
更新
我根据以下代码在 jetty.xml 中的处理程序列表中添加了一个 ShutdownHandler:
Server server = new Server(8080);
HandlerList handlers = new HandlerList();
handlers.setHandlers(new Handler[]
{ someOtherHandler, new ShutdownHandler(server,"secret password") });
server.setHandler(handlers);
server.start();
但是,我对如何完成它有点不确定,而且我不知道有任何真正的方法可以检查它是否不正确。我可以从配置标签中以这种方式引用 Jetty 服务器吗?
<Item>
<New id="ShutdownHandler" class="org.eclipse.jetty.server.handler.ShutdownHandler">
<Arg><Ref id="Server"/></Arg>
<Arg type="java.lang.String">password</Arg>
</New>
</Item>
另外,我对如何在URL url = new URL("http://localhost:" + port + "/shutdown?token=" + shutdownCookie);
它与密码或密钥有什么关系吗?java.net.SocketException: Unexpected end of file from server
因为我都试过了,当被叫到时,两者都给了我connection.getResponseCode();
。