java - 如何将war文件部署者的第三方类加载到tomcat中

标签 java jakarta-ee tomcat servlets jms

要求:

我有两个模块:

1) JMS 客户端 (jar) 2)网络应用( war )

这两个程序单独运行良好。

现在我的要求是,在将 webappication 部署到 TomcatServer 时,应该调用 JMSClient jar 中的 MyListnear 类,并且 JMSClient 应该启动并运行。

为了满足这个需求,我在WEB-INF\lib下部署了JMSClient.jar 用

更新了 web.xml 文件
<listener>
        <listener-class>com.jmsapiclient.JMSListener</listener-class>
</listener>

我不确定这在多大程度上是正确的。有人可以用更好的方法帮助我吗。

提前致谢

最佳答案

如果您的 JMSListener 实现了 javax.servlet.ServletContextListener接口(interface),然后它将收到 contextInitialized(ServletContextEvent arg0) 通知如果上下文已初始化,则显示消息。

如果您正在使用 Servlet 3.0 规范实现 Web 应用程序,您可以使用 @WebListener ( javax.servlet.annotation.WebListener) 注释您的类。所以没有必要(但仍然可以)在 web.xml 文件中声明它。

这暗示它们部署在相同的上下文中。

关于java - 如何将war文件部署者的第三方类加载到tomcat中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14908741/

相关文章:

java - 第二次点击返回原文

Java:从指向 jar 中目录的非分层 URI 创建文件

jakarta-ee - addFieldError 的反义词是什么?

java - 为什么在 Ubuntu 上尝试将 TomCat 安装添加到 NetBeans 时出现此错误消息(无法读取 CATALINA_HOME/conf/server.xml)?

java - 在 Tomcat6 中将类导入 JSP

java - java中任何集合或数据结构都是非阻塞的

java - 如何判断当前 tx (Hibernate) 中是否删除了 Grails/GORM 域实例?

java - java中的几个时区没有设置偏移量

tomcat - 部署 CAS 后 spnego 身份验证停止工作

java - 谷歌在云中驱动java