【问题标题】:Connecting to Siebel using Java databeans hangs forever使用 Java 数据bean 连接到 Siebel 永远挂起
【发布时间】:2017-10-31 01:47:55
【问题描述】:

您好,下面是我编写的示例代码:

import com.siebel.data.*;
import com.siebel.data.SiebelException;

public class DataBeanDemo
{
   private SiebelDataBean m_dataBean = null;
   private SiebelBusObject   m_busObject = null;
   private SiebelBusComp       m_busComp = null;

   public static void main(String[] args)
   {
      DataBeanDemo demo = new DataBeanDemo();
   }

   public DataBeanDemo()
   {
      try
      {
         m_dataBean = new SiebelDataBean();

         m_dataBean.login("Siebel://devServerXYZ:7777/XYZ/
          ecommunication_enu", ROSADMIN, ROSADMIN, "enu");

         System.out.println("Connected");

         m_busObject = m_dataBean.getBusObject("Opportunity");

         m_busComp = m_busObject.getBusComp("Opportunity");

         m_dataBean.logoff();
      }

      catch (SiebelException e)
      {
         System.out.println(e.getErrorMessage());
      }
   }
}

此代码执行没有问题,但卡在m_dataBean.login()。并且永远不会回来。

可能是什么问题?

如果我尝试更改连接字符串(甚至端口名称,从 7777 更改为任何其他数字,如 2320、2321),则会收到错误 could not open a session in 4 attempts SBL-JCA-00200

【问题讨论】:

  • 当 Java bean 与对象管理器连接时(通常在端口 2321 上),对象管理器日志文件中应该出现任何内部问题。您是否有相应的连接尝试日志文件?
  • 它没有生成任何日志
  • 您能告诉我们您尝试过或怀疑过什么吗?
  • 发布我的答案,我能够缩小问题范围。

标签: java siebel


【解决方案1】:

需要验证的 3 件事

  1. 连接字符串中的参数。 Gtway 服务器名称、OM 组件名称、端口号等(用户名/密码错误会立即显示,但其他人会抛出一般错误或永远挂起)
  2. (这是 Siebel 特有的)确保 Java 子系统配置文件的类路径指向 siebel.jar 和 siebelJI_lang.jar 文件
  3. Siebel 服务器已启动并正在运行。

如果 LDAP 为真,则无法使用 Databeans 使用此类登录。

在我的情况下,它是 1 和 2,这导致了问题。顺便说一句,Comp 名称区分大小写。

【讨论】:

  • 这个问题现在解决了吗?如果是这样,您能否更具体一点,究竟是什么导致了您的问题以及解决方案是什么?如果可能,您能否提供一个有效的示例代码?
  • 代码保持不变,除了我更正了区分大小写。对于第二点,我们需要检查服务器配置。通过 shellscript 或查看/编辑配置/属性文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-23
  • 1970-01-01
  • 2012-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多