有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何查找远程JNDI

是否可以在IBM MQ中查找远程JNDI。我的场景是,我在机器A上安装了一个MQ,带有JNDI资源(MQ资源管理器中的JMS管理对象)。现在,如果我想从独立JAVA类通过JMS连接到MQ,我可以从file://JNDI_FACTORY“。所有示例都只提到了这一点。但如果我想在机器B上使用独立的JAVA类,是否可能。也就是说,机器B有JAVA类,必须连接到远程JNDI(在机器A上)并查找连接工厂。我可以使用类似“A的主机名:端口”之类的东西吗对于机器B中java类中的属性ContextProviderUrl,是否要从机器A访问远程对象

还建议我进行远程JNDI查找

请帮忙

谢谢CHAKRI


共 (1) 个答案

  1. # 1 楼答案

    为简单起见,所有MQ JMS示例都使用文件JNDI来演示初始上下文的用法。您可以修改示例以查找LDAP服务器中的连接工厂和目标信息

    首先,在MQExplorer中,您需要选择LDAP Server选项将连接工厂和目标信息保存到LDAP服务器。然后,在应用程序中,您需要具有如下代码:

      String initialContextUrl = "ldap://myhost:991/c=uk,o=ACME"
      String contextFactory = "com.sun.jndi.ldap.LdapCtxFactory";
      Hashtable environment = new Hashtable();
      environment.put(Context.INITIAL_CONTEXT_FACTORY, contextFactory);
      environment.put(Context.PROVIDER_URL, initialContextUrl);
      Context context = new InitialDirContext(environment);
    

    有关详细信息和其他代码示例,请参阅信息中心主题Using JNDI to retrieve administered objects in a JMS application