首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >监听Glassfish上的JNDI的变化-如何查找EventContext?

问监听Glassfish上的JNDI的变化-如何查找EventContext?
EN

Stack Overflow用户
提问于 2011-09-01 17:03:08
回答 1查看 412关注 0票数 2

我的EJB应用程序从JNDI中查找一些配置值。我希望能够更改这些值,并让应用程序立即注意到这些值,而不必重新启动服务器或执行任何其他操作来触发它重新配置自身。

我的理解是,我应该实现javax.naming.event.ObjectChangeListener,从JNDI查找EventContext或EventDirContext,然后调用它的addNamingListener方法来注册我的ObjectChangeListener。

为了查找EventContext或EventDirContext,我尝试了这个,网上有很多例子建议我这样做:

代码语言:javascript
复制
InitialContext ctx = new InitialContext();
EventContext eventContext = (EventContext) ctx.lookup("");

但是,这给了我一个ClassCastException

代码语言:javascript
复制
java.lang.ClassCastException: com.sun.enterprise.naming.impl.SerialContext cannot be cast to javax.naming.event.EventContext

当我尝试强制转换为EventDirContext时,我也得到了相同的错误。

我尝试查找我使用的确切JNDI名称,以及"java:“、"java:comp”和"java:comp/env“,而不是"”。这些都是返回的对象,不能强制转换为我需要的任何事件上下文。

我使用的JNDI实现是普通的Glassfish 3.1.1。

是否可以侦听JNDI事件,或者我是否应该考虑完全不同的方法?感谢您的建议。

EN

回答 1

Stack Overflow用户

发布于 2012-06-12 04:02:44

GlassFish 3.1.2不支持JNDI事件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7268160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档