问题标签 [servletcontextlistener]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2687 浏览

servlets - 从 jar 文件中读取上下文 (.war) 中的资源

我正在使用 JBoss4.0.1 和 Struts2.1.6

我有一个应用程序,它有一些配置文件(文件夹 WEB-INF/config 中的 appConfig.xml)。此配置文件包含要读取的其他文件的相对路径。(other.xml、some.xml 等)。应用程序在 default/deploy 中部署为 .war

我有一个读取配置文件的实用程序包。我已经在 default/lib 中部署了 utility.jar

在我的 contextInitialized方法中,ServletContextListener我正在读取appConfig.xml并传递IOStreamappConfig我的实用程序类,它读取此文件并加载所有上下文相关路径。

我现在如何阅读这些文件?因为如果我尝试创建一个输入流,它会返回 NULL。

我尝试在实用程序类中进行以下操作。

从 ServletContextListener 的 contextInitialized 方法内部调用 read 方法

0 投票
2 回答
2554 浏览

java - 我们可以在 contextInialized 方法中调用 getServletContext() 吗?

在此代码中创建实现contextInitializer接口的 servlet,

然后contextinitialized()使用这一行访问里面的文件

发生了这个异常

有任何想法吗 ?

0 投票
1 回答
443 浏览

jakarta-ee - weblogic集群上下文

我有一个在 WebLogic 10.3 上运行的 Web 服务应用程序。最近,我创建了一个集群,以便应用程序可以在多个服务器上运行并共享资源。我有一个ServletContextListener在服务器启动/关闭时绑定/取消绑定属性/对象的对象。

使用单个服务器,这很有效。然而,在集群中,当一台服务器宕机时,上下文监听器(contextDestroyed方法)被调用,一切都与上下文解除绑定(此时其他服务器无法再使用资源)。是否有另一个我可以使用的侦听器,或者contextDestroyed只有在集群中的最后一个服务器正在关闭时才运行该方法?

任何帮助,将不胜感激。总的来说,我对 WebLogic 和 Java EE 有点陌生。

0 投票
2 回答
2802 浏览

google-app-engine - 谷歌应用引擎 - 在启动时初始化对象

我正在谷歌应用引擎上开发一个 GWT 应用程序,我正在寻找初始化对象(如单例、列表、共享资源等)的最佳方法。我想我正在寻找类似“Spring 应用程序上下文文件”的东西

有任何想法吗?

0 投票
2 回答
2128 浏览

servlets - 扩展 HttpServlet 实现 ServletContextListener

HttpServlet扩展和实现一个类是一个好习惯ServletContextListener吗?

这样做有什么好处和坏处?

0 投票
1 回答
872 浏览

jsp - JSP 应用程序设计:在哪里设置应用程序范围的值

在 Java Web 应用程序中,设置(或设置时使用的最佳机制)一个字符串(或多个字符串)以供使用的最佳位置在哪里,应用程序范围内,在应用程序运行时永远不会更改,并且很可能之后永远不会更改它安装在给定的服务器上?

关键的一件事是我希望能够在任何地方访问它(在 Java 类中 - 或 - 在 JSP 中),因为这将用于诸如应用程序名称、URL、地址、电话号码之类的东西,等等

我相信“最简单”的方法是application.setAttribute()在每个 JSP 中使用(或者可能在全局包含文件等中),但这几乎没有意义,因为它永远不会改变 - 为什么要继续设置它?但是,在应用程序上下文中设置它会提供使用 EL 表达式或application.getAttribute()检索值的能力——有没有更好的方法或更好的地方来设置这样的属性?以某种方式在 web.xml 中?不知道为什么这么难找到...也许我只是不知道要问 Google 的问题。

0 投票
2 回答
8753 浏览

tomcat - Tomcat ServletContextListener.contextDestroyed 未调用

在重新加载上下文时,我们有多个 MemoryLeaks(在 catalina.out 中找到)。

为了清理这些线程,我创建了 ServletContextListener 的实现。

contextInitialized()创建上下文时成功调用该方法,因为我可以看到日志条目。

但是该contextDestroyed()方法没有被调用,所以我的清理代码没有被调用。任何想法为什么会发生这种情况?

当需要重新加载上下文时,我应该实现另一个需要注意的接口吗?

0 投票
1 回答
963 浏览

java - 从 Tomcat 应用程序中不同侦听器之间的上下文中获取属性

我有一个 Tomcat 7 webapp,其中有两个不同的ServletContextListener.

例子:

听众 A

听众乙

web.xml

¿ 出现顺序是否web.xml会影响加载过程,或者它们是否加载到不同的线程中?

我想知道是否可以从 ListenerB 的上下文中获取 ObjectA。我总是可以将两个侦听器合并为一个唯一的侦听器,这样我就可以在同一个侦听器中同时拥有对象 A 和 B,但我想知道这是否可能。

我知道我可以选择attributeAddedServletContextAttributeEvent界面使用,但是,这是否足以完成工作,或者如果 ListenerB 在 ListenerA 之前加载,它会失败吗?

0 投票
3 回答
421 浏览

tomcat - 我的 Web 应用程序在 Tomcat 中成功部署后如何获得通知?

一旦我的 Web 应用程序成功部署在 Tomcat 中且没有任何错误/异常,我想得到通知吗?

我可以编写一个 servletContextListener 但contextInitialized()方法将在 Web 应用程序启动之前被调用,这不能解决我的要求。

0 投票
0 回答
124 浏览

sql - Groovlet ServletContextListener 无法在销毁时关闭 SQL 连接

我有一个 Groovlet (Groovy Servlet),它在各个方面都运行良好,除非是时候破坏上下文并部署更新。当我删除 war 文件时,会在我的实现上调用 ServletContextListener.destroy,这反过来又会尝试关闭所有打开的数据库连接。这似乎陷入困境。

我通常在此应用程序中对我的大多数查询使用 sql.firstRow,并且似乎没有任何方法可以关闭底层 PreparedStatement 和 ResultSet(除了方法关闭)。我没有缓存结果,而是使用 BeanUtils.populate 将值复制到目标 bean 中进行处理。

在最后关闭之前,我应该在每个 firstRow 或 eachRow 之后调用其他方法吗?

我在 Java 6 和 Groovy 2.1.1 下运行 Tomcat 6。