2012-07-10 62 views
0

正在处理EJB 1.0应用程序。我想在jboss服务器启动时启动我的schedular servlet, <load-on-startup>1</load-on-startup>在我的web.xml。将该标签添加到我的应用程序后,花了近45分钟才开始。我不知道那个问题。加载web.xml中的启动标签

这是我web.xml文件提前

感谢。

<web-app id="WebApp"> 
    <display-name></display-name> 
    <servlet> 
     <servlet-name>Main</servlet-name> 
     <display-name>Main</display-name> 
     <servlet-class>control.Main</servlet-class> 
    </servlet> 
    <servlet> 
     <servlet-name>TimerLoader</servlet-name> 
     <display-name>TimerLoader</display-name> 
     <servlet-class>timer.TimerLoader</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet> 
     <servlet-name>SchedulerMain</servlet-name> 
     <display-name>SchedulerMain</display-name> 
     <servlet-class>admin.SchedulerMain</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet> 
     <servlet-name>FileDownload</servlet-name> 
     <display-name>FileDownLoad</display-name> 
     <servlet-class>control.FileDownload</servlet-class> 
    </servlet> 

    <servlet-mapping> 
     <servlet-name>Main</servlet-name> 
     <url-pattern>/Main</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>TimerLoader</servlet-name> 
     <url-pattern>/TimerLoader</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>SchedulerMain</servlet-name> 
     <url-pattern>/SchedulerMain</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>FileDownload</servlet-name> 
     <url-pattern>/FileDownLoad</url-pattern> 
    </servlet-mapping> 
    <welcome-file-list> 
     <welcome-file>index.html</welcome-file> 
     <welcome-file>index.htm</welcome-file> 
     <welcome-file>index.jsp</welcome-file> 
     <welcome-file>default.html</welcome-file> 
     <welcome-file>default.htm</welcome-file> 
     <welcome-file>default.jsp</welcome-file> 
     <welcome-file>/Main</welcome-file> 
    </welcome-file-list> 
    <resource-ref> 
     <res-ref-name>jdbc/TEST5</res-ref-name> 
     <res-type>javax.sql.DataSource</res-type> 
     <res-auth>Container</res-auth> 
    </resource-ref> 
</web-app> 
+1

你的'web.xml'没有什么错。将一些日志记录添加到我们的servlet初始化代码中,并查看需要这么久的日志。 – npe 2012-07-10 14:42:52

+0

您正在使用EJB 1.0?你确定? – Tomer 2012-07-10 15:49:55

回答

1

如果负载上启动1只设置让您的应用程序需要很长的时间来加载,它应该意味着你的初始化代码采取的时间。当你提到一个时间表servlet时,我会说你可能在时间表init逻辑中有阻塞逻辑。

init调用应该只设置servlet,并应尽快返回以提高应用程序启动时间。您需要管理自己的调度线程,而不是使用init调用线程来进行初始化之外的其他事情。