【问题标题】:Need simple code: Get Glassfish InitialContext & lookup ConnectionFactory需要简单的代码:获取 Glassfish InitialContext 和查找 ConnectionFactory
【发布时间】:2015-10-26 09:03:42
【问题描述】:

我的 glassfish4 服务器在 localhost 上运行。

我的 java 客户端是一个从 Eclipse 运行的简单 GUI。

我的 glassfish4 管理控制台向我保证我已经正确配置了 Resources/JMS Resources/Connection Factories/jms/goConnectionFactory。

所以我认为客户端从 glassfish 获取 InitialContext 并使用它来查找“jms/goConnectionFactory。不是真的”是微不足道的,

在阅读了已回答的问题后(​​所有问题都被其他特殊问题所吸引),我仍然无法连接。

谁能告诉我我需要加载哪些属性才能完成这项工作?

Properties prop = new Properties:
   prop.setProperty(Context.INITIAL_CONTEXT_FACTORY,
        "com.sun.enterprise.naming.impl.SerialInitContextFactory");
   prop.setProperty(Context.URL_PKG_PREFIXES,
        "com.sun.enterprise.naming");
   prop.setProperty("org.omg.CORBA.ORBInitialPort","3700");
   prop.etProperty("org.omg.CORBA.ORBInitialHost","localhost");
   System.out.printlin (jndiContext.getClass().getName();

InitialContext jndiContext = new InitialContext (props);

ConnectionFactory = 
    (ConnectionFactory) jndiContext.lookup("jms/goConnectionFactory");

第一个 printlin() 将其返回到控制台“javax.naming.InitialContext”。

但是 lookup() 周围的 try/catch 块(未显示)捕获 NullPointerException

而且我不知道如何判断我的 InitialContext 对象是来自 glassfish4 服务器的有效对象,还是我使用不正确。

无论如何...... glassfish 服务器和 java GUI 客户端(从 Eclipse 运行)都运行在同一台机器上,这似乎是一种非常通用的安排。因此,我敢肯定,只需一小段代码证明 JMS 有效,这将有助于所有 JMS 新手 — 无需花一周时间寻找无济于事。

注意:我也试过

factory =
      (ConnectionFactory)
        PortableRemoteObject.narrow(
          jndiContext.lookup("jms/goConnectionFactory"),
          ConnectionFactory.class
       );

但我敢肯定,在我尝试让本地客户端与在其他地方的虚拟服务器上运行的 glassfish4 通信之前,我不会需要它。

我在上面的道具中使用了“localhost:8080”,而不仅仅是“localhost”。结果相同。我得到了某种 InitialContext 对象。但它不会检索 ConnectionFactory。

谁能提供帮助?

【问题讨论】:

    标签: glassfish jms jndi


    【解决方案1】:
    ...
        System.out.printlin (jndiContext.getClass().getName();
    
        InitialContext jndiContext = new InitialContext (props);
    ...
    

    第一行不是你的空指针的原因吗?此时 jndiContext 尚未初始化。

    【讨论】:

      猜你喜欢
      • 2015-01-18
      • 2017-05-23
      • 2012-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 2011-08-13
      • 2011-01-13
      相关资源
      最近更新 更多