检测嵌入式Jetty服务器何时完全初始化

11 jetty embedded-jetty

我在一个java应用程序中嵌入了Jetty,并在Jetty服务器对象的实例上调用了start()方法(在设置了描述静态和动态Web内容位置的处理程序列表之后).start()调用是否阻塞,直到初始化完成?如果没有,我如何确定服务器何时完全启动并准备好接收请求?

Bob*_*Lee 5

是的,Server.start()返回时服务器已完全初始化.没有必要做任何其他事情.文档不清楚这种行为,但我只是通过查看代码来验证它.


Mar*_*nor 0

下面是我如何在 ANT 中执行此操作的示例,一旦 jetty 应用程序准备就绪,就启动 Firefox

<parallel>
    <jetty tempDirectory="${work.dir}">
        <connectors>
            <selectChannelConnector port="${jetty.port}"/>
        </connectors>
        <webApp name="ex1" warfile="ex1.war" contextpath="/ex1"/>
    </jetty>

    <sequential>
        <waitfor maxwait="10" maxwaitunit="second">
            <http url="http://localhost:${jetty.port}/ex1"/>
        </waitfor>

        <exec executable="firefox" spawn="yes">
            <arg line="http://localhost:${jetty.port}/ex1"/>
        </exec>
    </sequential>
</parallel>
Run Code Online (Sandbox Code Playgroud)