【发布时间】:2021-12-15 15:52:24
【问题描述】:
1
在查找 jdbc 数据源的 JNDI 连接时出现以下错误:
javax.naming.ConfigurationException:无法完成对“java:”名称的 JNDI 操作,因为服务器运行时无法将操作的线程与任何 J2EE 应用程序组件相关联。当使用“java:”名称的 JNDI 客户端未在服务器应用程序请求的线程上执行时,可能会发生这种情况。确保 J2EE 应用程序不会在静态代码块或由该 J2EE 应用程序创建的线程中对“java:”名称执行 JNDI 操作。此类代码不一定在服务器应用程序请求的线程上运行,因此对“java:”名称的 JNDI 操作不支持。 [根异常是 javax.naming.NameNotFoundException: Name not found in context "java:"。]
在服务器启动时,我创建了一个 servlet init 方法,我使用它来启动我的兔子 MQ 队列侦听器线程的线程池。每当队列中有消息时,我必须处理该消息并将其插入数据库。当尝试使用现有的插入数据库的代码时,在 WebSphere 服务器中获取上述 JNDI 异常。任何指针都会有所帮助。
【问题讨论】:
标签: multithreading rabbitmq websphere jndi