【发布时间】:2015-02-24 13:30:16
【问题描述】:
我有一个带有 Jersey 和 Tomcat 的 REST Web 服务。如果客户端调用 REST Web 服务,它将向 ActiveMQ 队列服务器发送消息。为此,REST 服务器必须创建一个连接、一个会话等以向 ActiveMQ 服务发送消息。此时,来自客户端的每次调用都会创建此连接和会话等。看这个例子
@GET
@Produces(MediaType.TEXT_PLAIN)
public Response getProducts() {
...
session.start();
connection.start();
...
sendMessageToQueue();
...
session.close();
connection.close()
}
我想要的是创建一个类,它代表一个已经启动连接、会话等的 Messagehandler。使用messageHandler.sendMessage() 应该可以从 REST getProducts 方法立即发送消息。
我的问题是:我如何实例化这样一个在 Tomcat 服务器启动时始终运行的处理程序? 我发现通过实现 ServletContextListener 和 Listeners,可以在 Tomcat 运行之前加载一个类,但是如何在我的 REST-Servlet-Classes 中访问它?
谢谢
【问题讨论】:
标签: java web-services rest tomcat