使用Java的自定义事件监听器

时间:2015-09-04 14:02:11

标签: java glassfish blocking blockingqueue custom-events

我创建了一个应用程序,用于侦听来自AS400 DataQueue的消息。 该应用程序在Java应用程序服务器(Glassfish)中运行。

我正在使用jt400库来连接和读取Dataqueue。 从数据队列中读取与从套接字读取非常相似。你调用read并阻塞,直到从连接的另一端写入某些东西。 API提供了一种重载读取​​方法,允许程序员设置超时时间。

由于read是一个阻塞调用,必须从我的应用程序中调用,所以我必须找到一种方法,让它在应用程序启动时启动,并在Glassfish启动时保持运行。

我创建了一个EJB,添加了@Startup注释并设置了@Scheduled方法。 在那个方法中,我在while循环中调用read超时,允许我检查类的属性并可能将其关闭。

我想知道是否有更好的方法来实现这样的东西。我并没有具体谈到连接到AS400 DataQueue。我想到的是在Java应用程序服务器中运行的事件机制,您可以在其中挂钩自定义事件消息提供程序。

这可以像Glass资源一样被定义为Glassfish上的自定义资源吗? J2EE规范是否提供了一些构建机制?

0 个答案:

没有答案