【问题标题】:Migrating application from WAS Full profile 8.5.5.7 to WAS Liberty profile 17.0.0.4将应用程序从 WAS Full profile 8.5.5.7 迁移到 WAS Liberty profile 17.0.0.4
【发布时间】:2018-09-28 11:36:24
【问题描述】:

我已迁移所有内容并将应用程序部署到新服务器。当我尝试运行它时,我得到以下异常:

尝试使用提供程序 URL:“corbaloc:iiop:127.0.0.1:2809”获取初始上下文时发生通信失败。确保 URL 中的任何引导地址信息都是正确的并且目标名称服务器正在运行。没有指定端口的引导地址默认为端口 2809。除了引导地址不正确或名称服务器不可用之外,可能的原因还包括网络环境和工作站网络配置。

现在,在完整的配置文件中,我知道在哪里可以看到引导地址以及如何配置它。不过,我在 Liberty 个人资料上找不到任何东西。我确实查看了几个 IBM 文档,但找不到如何操作。这里有人可能会指出我正确的方向吗?

只是为了包含所有内容,这里是 jndi.properties 文件中的相关部分:

java.naming.provider.url=corbaloc:iiop:127.0.0.1:2809 java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactory

除了部署应用程序之外,我还从未使用过任何一种 WAS,也从未使用过 JNDI 查找或其他任何东西。我知道有一个工厂使用 java.properties 文件。

由于我想尽可能少地进行迁移,我认为最简单的方法是更改​​ Liberty 中的引导地址,而不是更改应用程序中正在运行的代码。

【问题讨论】:

标签: jndi websphere-liberty bootstrapping open-liberty


【解决方案1】:

为了在 WebSphere Liberty 上的应用程序中使用 JNDI,不必配置任何特殊属性(例如您提到的 java.naming.* 属性)。

要在 Liberty 上使用 JNDI,请在 server.xml 中启用 JNDI 功能:

<featureManager>
  <feature>jndi-1.0</feature>
</featureManager>

然后您可以获得InitialContext 并在您的应用程序的Java 代码中执行查找,如下所示:

DataSource myDs = InitialContext.doLookup("jdbc/myDataSource");

【讨论】:

    【解决方案2】:

    如果您需要将引导地址设置为非默认值,您可以在 server.xml 中使用 &lt;iiopEndpoint&gt; 元素执行此操作,例如:

    &lt;iiopEndpoint id="defaultIiopEndpoint" iiopPort="2809"/&gt;

    包含 ORB here 的完整文档。

    【讨论】:

      猜你喜欢
      • 2014-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-11
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      相关资源
      最近更新 更多