首页 文章

如何强制 Jersey 加载它的服务?

提问于
浏览
1

我在使用在码头服务器上运行的泽西应用程序时遇到问题,这个应用程序最多需要30秒才能启动 . 我不知道是什么导致了这种行为,我不确定如何调试它 .

在对其中一个服务发出第一个HTTP请求之前,不会启动Jersey . 在第一次请求后,将打印以下内容:

INFO: Initiating Jersey application, version 'Jersey: 1.3 06/17/2010 04:53 PM'

之后,通过5到45秒,然后泽西打印出有关它找到的资源以及回复HTTP请求的信息 .

首先,我想强迫球衣开始,当应用程序的其余部分开始作为一个黑客来解决这个问题,直到找到罪魁祸首 . 有没有办法做到这一点,而不模拟对jetty的实际HTTP请求?

其次,我对如何调试它感到难过 . 我检查了服务类中的构造函数,但它们似乎并不负责 . 有人和球衣有类似的问题吗?

1 回答

  • 0

    您可以在web.xml中尝试以下操作:

    <servlet>
        <servlet-name>ServletAdaptor</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    

    我不确定为什么会有很长的延迟 - 也许它正在进行某种形式的更新检查 - 你是否能够监控应用程序的http流量? Glassfish就是这么做的,可能需要一段时间 .

相关问题