gpt4 book ai didi

java - ServletContextListener 不在部署时执行

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:18:06 27 4
gpt4 key购买 nike

我正在尝试在部署我的 war 文件时初始化一个流对象。

我编写了一个实现 ServletContextListener 的 Initializer 类,并向我的 web.xml 添加了一个监听器类标记。问题是 ContextInitialized 事件在我向我的应用程序发出第一个请求时发生,而不是在应用程序部署时发生。

有没有更好的方法来初始化我的应用程序?

编辑:

public class Initializer implements ServletContextListener{

@Override
public void contextDestroyed(ServletContextEvent arg0) {
System.out.println("Context Destroyed");

}

@Override
public void contextInitialized(ServletContextEvent arg0) {
System.out.println("Context Initialized");
}

}

来自 web.xml:

<listener>
<listener-class>thepackage.Initializer</listener-class>
</listener>

编辑 2:找到解决方案并在下面发布。

最佳答案

问题是 Websphere Liberty 特有的。

将以下内容添加到您的 Websphere 服务器的 server.xml (~/wlp/usr/servers/{server-name}/server.xml):

<webContainer deferServletLoad="false"/>

更多信息:

http://www-01.ibm.com/support/knowledgecenter/SSEQTP_8.5.5/com.ibm.websphere.wlp.doc/ae/twlp_servlet_load.html?cp=SSEQTP_8.5.5%2F1-3-11-0-3-2-20-0

关于java - ServletContextListener 不在部署时执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32357661/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com