问题标签 [initial-context]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
websphere - VPN 上的初始上下文查找失败
我有一个如上所示的设置。最近,我们的 Oracle 数据库被转移到一个受防火墙保护的受保护网络段中。
场景 #1:当没有打开 VPN (Cisco Anyconnect) 时,我的 EJB 2.1 客户端可以绑定并创建初始上下文。我可以查找我的无状态会话 EJB 2.1。到目前为止一切都很好。我还没有编写任何对 Oracle 数据库的调用。所以,请注意,此时,我没有任何呼叫到 Oracle,甚至没有尝试任何类型的 JDBC 连接。
场景 #2:现在,当我打开 VPN 时,我无法创建初始上下文,绑定失败。
我进一步挖掘,问题的症结在于:
在开启 VPN 之前,ABCD1099.x.somecompany.com 和 ABCD1099.mnsomecompany.com 都解析到同一个地址。开启 VPN 后,双归属进入,“ABCD1099.mnsomecompany.com”变得无法路由,但“ABCD1099.x.somecompany.com”仍可路由。
在我的整个代码和 WAS 配置文件的创建中,我使用了可路由的主机名。但是,InitialContext 不断获取无法路由的主机名。我也尝试过使用 IP 地址。那没起效。我不断收到以下异常。
java - OpenJMS:无法设置 INITIAL_CONTEXT_FACTORY
我写了下面的代码来设置我的Context
:
但是,当我执行 jar 时,我得到了这个异常(注意:不是当我进行编译时+抱歉我不能在这里写): http: //pastebin.com/5i9SbvEh
我不知道为什么,因为我实际上有jndi
,jms
和openjms
罐子(我用 , 做的One-JAR
)。
java - Inauthentic client error while connecting to ESB using java
I am trying to connect to ESB broker using java code as below. I have verified that the username and password we are using are correct. Still I am receiving this error. What could be the cause for this error?
Java Code:
java - 关闭 InitialContext 与将其初始化为 null
有点困惑 - 假设我们创建InitialContext
并DataSource
喜欢这样:
现在进行一些数据库操作时,我建议ctx
应该关闭:
但这里 InitialContext
只是简单地初始化为null
:
那么在ctx
没有null
关闭它的情况下会发生什么?
jax-rs - CXF 本地传输中的 NoInitialContextException 用于测试 JAX-RS
我正在关注本教程:https ://cwiki.apache.org/confluence/display/CXF20DOC/JAXRS+Testing
但我得到这个错误:
javax.naming.NoInitialContextException:需要在环境或系统属性中指定类名,或作为小程序参数,或在应用程序资源文件中:java.naming.factory.initial
这是我的本地服务器类:
还有一个客户示例:
最后,这是服务器端的 jax-rs 实现:
也许问题是本地传输配置不正确,因为查找会启动异常(请参阅:服务器端):
..
jms - IIB 应用程序 Windows 服务器中获取 JNDI 管理对象 MQ 失败
我正在我的本地 Windows IIB/MQ 服务器上工作。我想要做的是在 JMSOutput 队列上放置一条消息。为此,我通过创建初始上下文工厂创建了 JMS 管理对象,并在其中使用文件系统选项创建了目标队列和连接工厂。我在下面指定的 Provider_URL 路径中创建了一个 .binding 文件。
在 JMS 输出节点属性中,我已将 JMS 提供程序名称设置为
Websphere MQ
和初始上下文工厂
com.sun.jndi.fscontext.RefFSContextFactory
所有其他选项均未填写。
请注意,JMSADmin.config 文件具有以下未注释的属性:
PROVIDER_URL=file:/C:/JNDI INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
现在,当我尝试在 JMS 输出节点上放置消息时,出现以下异常:
JMSClientErrors:handleJNDIException() 类型:字符:名称:字符:标签:字符:目录:字符:BIPmsgs 严重性:整数:3 数字:整数:4640 文本:字符:获取 JNDI 管理对象失败 插入类型:整数:5 文本:字符:经纪人'LOCALBK10';执行组“测试”;消息流“测试”;节点“ComIbmJMSClientOutputNode”插入类型:整数:5 文本:字符:com.sun.jndi.fscontext.RefFSContextFactory 插入类型:整数:
任何帮助将不胜感激。
websphere-liberty - 将我们的代码迁移到 Liberty 配置文件时出现上下文初始化错误
我们正在将我们的代码从 WAS 8.0 迁移到 Liberty 17.0.0.1 版本。当我们尝试测试应用程序在线功能时,我们收到以下错误,
我们还使用 Liberty Migration 工具包检查了我们的 ear 文件,我们在其中一个 jar 中变得越来越严重,
迁移到 Liberty 时,使用 java.naming.factory.initial 和 java.naming.provider.url JNDI 属性的默认值。这些属性的以下 WebSphere Application Server 传统值无效:
java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactory
java.naming.provider.url=corbaloc:iiop:localhost:2809
当您使用 InitialContext(Hashtable) 构造函数时,删除这两个属性。如果没有使用其他属性,则可以使用默认构造函数。
如果属性文件规则检测到 jndi.properties 文件,请检查文件中的属性。删除 java.naming.factory.initial 和 java.naming.provider.url 属性,或者如果不需要这些属性,则删除该文件。
有人可以帮助我们如何使用 default InitialContext
。请找到调用 jndi 和上下文路径的附加代码,
java - javax.naming.NoInitialContextException:无法实例化类:com.sun.enterprise.naming.SerialInitContextFactory
我正在部署一个使用 EJB 的应用程序。我已经编写了一个 EJB 和一个 Java 独立客户端来连接。在 Netbeans 中一切正常,但是当我尝试在命令行中启动时出现异常。JavaFX 应用程序包含以下代码:
我尝试了以下方法:
我得到的错误是:
我真的不知道如何解决它。
非常感谢您提前提供的帮助!
java - 缺少 InitialContext 定义时使用哪个 Java 运行时异常
我正在编写一个 Java Servlet 应用程序,它需要存在某些环境变量和 JNDI 定义。这些在server.xml
文件中定义。无法使用默认值。所以程序需要抛出一个运行时(未经检查的)异常。但是哪一个?如果没有一个java.lang.RuntimeException
适合的子类,我想我们将需要创建一个新类型。
websphere - 从另一个 WebSphere 配置文件访问一个 Websphere 配置文件中的远程 EJB
简而言之:我对无状态 bean 从一个 Websphere 服务器进行远程 JNDI 调用到另一个(同一台机器上不同 JVM 中的不同配置文件)但调用完成后,InitialContext 被更改,我无法再访问我的本地 bean .
情况如下:
Websphere 服务器 Server1 有一个包含许多 bean 的复杂应用程序,并且还需要访问运行另一个应用程序的 Websphere Server2 上的无状态 bean (BeanX)。
我已经设法使用以下两种方法之一访问 Server2 上的 BeanX:
通过代码连接:
/li>- 通过 Webshere 配置连接在 Server1 中配置:Environment -> Naming -> Name Space binding -> New ... Indirect 并引入了所需的值,对应于从 Server2 暴露的 bean。
提供者 URL:corbaloc:iiop:localhost:9101
初始上下文工厂名称:com.ibm.websphere.naming.WsnInitialContextFactory
然后继续在代码中获取 bean,就好像它在我的本地上下文中一样。
我为 Server1 中的 Outbound 和 Server2 中的 Inbound 删除了 RMI/IIOP 的安全性,以便服务器可以通信。
bean 由 Server2 公开,远程接口RemoteBeanXManager
存在于两个应用程序的公共包中,并且调用正确通过。
问题出现在调用之后,当Server1中为其本地bean 的后续 EJB 注入返回一个com.ibm.ejs.container.util.ExceptionUtil.NoSuchEJBException
基本上,在@EJB
遇到下一个注解时,Server1 会抛出:
com.ibm.ejs.container.EJBNotFoundException:名为 SomeOtherBean 的 EJB 不在应用程序“我的企业应用程序”中。在 com.ibm.ejs.container.HomeOfHomes.resolveEJBLink(HomeOfHomes.java:751)
我在调查时设法理解的是,InitialContext
Server1 上的连接被与 Server2 的连接更改,并且在通过远程接口调用后无法“重置”回来。我尝试在获取InitialContext
远程管理器后使用默认设置重新获取,但无济于事。
我尝试添加可选配置参数:
com.ibm.websphere.naming.jndicache.cachename providerURL
com.ibm.websphere.naming.jndicache.cacheobjectnone
还是一样的例外。
如果您对如何隔离/缓存 Server1 上的上下文以便它可以在 RMI-IIOP 调用后恢复正常操作有任何想法,请告诉我
更新添加:
当我注释掉执行远程调用的代码时,应用程序正确启动,并且所有@EJB
注入工作。
在Server2中,在从 Server1 调用方法时 - 无一例外,只有这些消息:
Server1错误的完整堆栈跟踪是:
[我认为发布所有事件报告会太长。]