问题标签 [ibm-odm]

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.

0 投票
1 回答
75 浏览

ilog - ILOG - 版本 8.0.1

有时,当规则从决策中心部署到 RES 时,虽然最近的更改在 RES 上的新存档中是可见的,但执行结果并没有反映它们。就好像在执行时无法识别更改。无需更改规则的第二次部署将解决此问题。有人可以解释为什么会这样吗?

0 投票
1 回答
4722 浏览

jrules - 如何在不更改 XOM 的情况下定义用于 ODM 决策表的函数?

我正在使用 ODM 8.5(JRules 的继任者)。field在我的 Java 域中,我有一个代表数字“000”到“999”的三字符字符串。我想要一个代表逻辑的决策表,例如:

IBM关于定义列状态的文档 - “条件语句是不完整的 BAL 谓词表达式......”。BAL 中有什么东西可以做我想做的那种字符串比较吗?如果没有,是否可以从 BAL 调用 IRL 中定义的函数?如果是这样,怎么做?对于如何在 ODM 中处理这个简单问题(不更改现有的 Java XOM),我也愿意接受其他建议。现在,在我看来,我不能使用 ODM 决策表,尽管底层逻辑似乎非常适合决策表。

0 投票
1 回答
830 浏览

jrules - 如何使条件测试对应于 ODM 决策表的子列?

我正在使用 ODM 8.5(JRules 的后续版本),并且正在模仿 IBM 教程 -编辑决策表中描述的步骤;但是,我无法生成合法测试。在本教程中,他们创建了以下测试:

如果我使用 Eclipse 的补全功能 () 为我要创建的表生成合法补全,我无法生成<min>or <max>,但我可以生成<a string>. 但是,这会生成以下警告,并且不会创建子列。

在此处输入图像描述

我不知道警告试图告诉我什么(当我使用建议的替代品时,我讨厌收到警告)。(“字典顺序大于”是我定义的一个函数,它接受两个字符串参数;但是,更改为像“包含”这样的预定义函数没有区别。)如果我手动更改<a string>to<min>和的出现<max>,我会收到错误:

在此处输入图像描述

如何使我的决策表表现得像教程中的那样?

0 投票
1 回答
652 浏览

ilog - 连接到决策服务器时出现 WODM 7.5 错误 - 联系“/res/j_security_check”时出现 IO 错误

尝试从 Rule Studio/Decision Center 连接到示例服务器上的决策服务器时,出现以下错误。

联系“/res/j_security_check”时出现 IO 错误

使用 WAS 7 作为 WODM 决策服务器的示例服务器。

一个。我没有使用任何证书。湾。Rule Execution Server Management EAR 已正确部署和启动。

浏览了 IBM 文档,但它并没有太大帮助,因为这些步骤已经完成。 用于解决的 IBM 文档

以前有人遇到过这个问题并解决了吗?

我昨天已经解决了这个问题。问题是我将网址提供为 [//localhost:9080/res]

本地主机没有得到正确解析。我正在使用 VPN,在提供 IP 地址而不是“本地主机”之后,它运行良好。

0 投票
1 回答
646 浏览

ilog - 从 ILOG 决策中心导出规则项目

每次我尝试从决策中心导出我的规则项目时,我都会收到以下错误:

当我导出其他规则项目时,我没有收到此错误,因此这不是与决策中心相关的问题,它可能是规则项目问题。

有人对此有解决方案吗?

0 投票
1 回答
1654 浏览

ibm-odm - 如何从决策表操作列上的 BOM 成员创建对象(调用构造函数)?

我有 2 个类型为 TYPE1 的数组列表(可以这么说)作为我的规则项目的规则集参数。一个用于 IN 另一个用于 OUT。在我的规则流中,我有一个初始化 OUT 规则集参数的初始操作任务。由于我们有一个 arrayList 作为输入,我将不得不“迭代”它,我知道该怎么做。

我的问题随之而来。在我的规则流的下一个任务中,我有一个规则任务,我在其中添加了所有具有一些先决条件的决策表。在大多数决策表上,可以触发多个规则。我想要实现的是对于每个触发的规则,我想将 TYPE1 类型的新对象添加到输出数组列表中。问题来了。如果我有 3 个规则触发,我实际上有 3 个类型为 TYPE1 的对象被添加到输出数组列表中,但所有 3 个对象都具有相同的值。看起来所有人都“指向”同一个对象。

我的问题是,有没有办法在操作列上创建一个类型为 TYPE1 的新对象(调用构造函数),所以在执行规则的其余操作时,它写在 TYPE1 的新对象上?我知道如果我创建与我拥有的规则一样多的 TYPE1 类型的规则集变量并为每个规则使用每个规则,我可以实现这一点,但是这样我的表会变得很大(横向),这不是我们想要的方式。

TYPE1 和数组列表都是 BOM 成员。

编辑:忘了提到我正在使用 RetePlus 算法,以“none”作为退出标准,排序和动态 BAL 用于运行时规则选择。

我希望我对自己的解释足够好,以便有人能够帮助我。提前致谢。

0 投票
2 回答
1357 浏览

rule - 如何在 IBM ODM 中运行技术规则

我想知道,我们应该如何执行IBM ODM技术规则中写的规则。我正在使用 ODM V8.0.1。我已经尝试如下。

  1. 我创建了一个名为 Courier.java 的类的 XOM

    公共类 Courier { 私有字符串 courierType; 私人int距离;

    带有 getter 和 setter

    }

  2. 我创建了一个添加此 XOM 的规则项目并创建了相应的 BOM。

  3. 我已将 Courier 对象添加为 IN_OUT 规则集参数,名称为“courier”
  4. 然后用下面的代码创建了一个技术规则

    当 { cour : Courier(); }

    then { note("Courier Object Check is Satisfied"); }

  5. 创建了一个规则流,其中只有一个规则任务指向上述技术规则。

  6. 然后我运行这个规则流

    • 运行方式 --> 运行配置

      • 在运行配置对话框中,编写下面的函数来创建快递对象并
        运行配置。

      com.seldart.Courier cour=新的 com.seldart.Courier(); 返回球场;

      规则流执行持续了 2 秒,但 note() 方法中的语句未
      在控制台中打印。

我不确定,规则流是否没有选择技术规则本身运行或快递对象未被识别?请指导我以正确的方式执行此技术规则。谢谢。

0 投票
1 回答
4664 浏览

websphere - Websphere Cobra.NoResponse 请求超时

在触发我们的规则 5 分钟后,我收到以下错误(在决策中心的 SystemOut.log 中),它一直是 5 分钟。规则集从决策中心发送到决策服务器,因为我可以在决策服务器中看到规则。

以下是我在决策中心的 SystemErr.log 中遇到的错误:

决策服务器和决策中心的 ORB 服务参数如下: -请求超时:300 秒 -定位请求超时:300 秒 -线程池设置是使用与 ORB 服务直接关联的线程池设置

决策中心的事务服务参数如下: -总事务生命周期超时:300 秒 -Aysnc 响应超时:30 秒 -客户端不活动超时:60 秒 -最大事务超时:300 秒

决策服务器的事务服务参数如下: -总事务生命周期超时:5000 秒 -Aysnc 响应超时:30 秒 -客户端不活动超时:120 秒 -最大事务超时:900 秒

我该如何解决这个问题?谢谢!

0 投票
1 回答
648 浏览

ilog - 如何在 IBM WODM8.x 中的 B2X 虚拟方法中使用集合

我正在尝试在 b2x 虚拟方法中使用集合(列表)

B2X 方法 - 参数 -

但是当我编写规则时,它不允许 List 对象。这里有什么问题?

0 投票
1 回答
834 浏览

jrules - 在 res 中将 Xom 添加到托管 URI

我正在研究 ILOG。目前我正在使用 Ant 脚本将 ruleapp 部署到 res。我的问题是当我部署它时工作正常,但我想将 xom 自动添加到 res 中的“添加托管 URI”选项卡。xom 正在附加到 ruleapp,但我想让它附加到托管 uri 部分。

提前致谢。