问题标签 [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.
ilog - ILOG - 版本 8.0.1
有时,当规则从决策中心部署到 RES 时,虽然最近的更改在 RES 上的新存档中是可见的,但执行结果并没有反映它们。就好像在执行时无法识别更改。无需更改规则的第二次部署将解决此问题。有人可以解释为什么会这样吗?
jrules - 如何在不更改 XOM 的情况下定义用于 ODM 决策表的函数?
我正在使用 ODM 8.5(JRules 的继任者)。field
在我的 Java 域中,我有一个代表数字“000”到“999”的三字符字符串。我想要一个代表逻辑的决策表,例如:
IBM关于定义列状态的文档 - “条件语句是不完整的 BAL 谓词表达式......”。BAL 中有什么东西可以做我想做的那种字符串比较吗?如果没有,是否可以从 BAL 调用 IRL 中定义的函数?如果是这样,怎么做?对于如何在 ODM 中处理这个简单问题(不更改现有的 Java XOM),我也愿意接受其他建议。现在,在我看来,我不能使用 ODM 决策表,尽管底层逻辑似乎非常适合决策表。
jrules - 如何使条件测试对应于 ODM 决策表的子列?
我正在使用 ODM 8.5(JRules 的后续版本),并且正在模仿 IBM 教程 -编辑决策表中描述的步骤;但是,我无法生成合法测试。在本教程中,他们创建了以下测试:
如果我使用 Eclipse 的补全功能 () 为我要创建的表生成合法补全,我无法生成<min>
or <max>
,但我可以生成<a string>
. 但是,这会生成以下警告,并且不会创建子列。
我不知道警告试图告诉我什么(当我使用建议的替代品时,我讨厌收到警告)。(“字典顺序大于”是我定义的一个函数,它接受两个字符串参数;但是,更改为像“包含”这样的预定义函数没有区别。)如果我手动更改<a string>
to<min>
和的出现<max>
,我会收到错误:
如何使我的决策表表现得像教程中的那样?
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 地址而不是“本地主机”之后,它运行良好。
ilog - 从 ILOG 决策中心导出规则项目
每次我尝试从决策中心导出我的规则项目时,我都会收到以下错误:
当我导出其他规则项目时,我没有收到此错误,因此这不是与决策中心相关的问题,它可能是规则项目问题。
有人对此有解决方案吗?
ibm-odm - 如何从决策表操作列上的 BOM 成员创建对象(调用构造函数)?
我有 2 个类型为 TYPE1 的数组列表(可以这么说)作为我的规则项目的规则集参数。一个用于 IN 另一个用于 OUT。在我的规则流中,我有一个初始化 OUT 规则集参数的初始操作任务。由于我们有一个 arrayList 作为输入,我将不得不“迭代”它,我知道该怎么做。
我的问题随之而来。在我的规则流的下一个任务中,我有一个规则任务,我在其中添加了所有具有一些先决条件的决策表。在大多数决策表上,可以触发多个规则。我想要实现的是对于每个触发的规则,我想将 TYPE1 类型的新对象添加到输出数组列表中。问题来了。如果我有 3 个规则触发,我实际上有 3 个类型为 TYPE1 的对象被添加到输出数组列表中,但所有 3 个对象都具有相同的值。看起来所有人都“指向”同一个对象。
我的问题是,有没有办法在操作列上创建一个类型为 TYPE1 的新对象(调用构造函数),所以在执行规则的其余操作时,它写在 TYPE1 的新对象上?我知道如果我创建与我拥有的规则一样多的 TYPE1 类型的规则集变量并为每个规则使用每个规则,我可以实现这一点,但是这样我的表会变得很大(横向),这不是我们想要的方式。
TYPE1 和数组列表都是 BOM 成员。
编辑:忘了提到我正在使用 RetePlus 算法,以“none”作为退出标准,排序和动态 BAL 用于运行时规则选择。
我希望我对自己的解释足够好,以便有人能够帮助我。提前致谢。
rule - 如何在 IBM ODM 中运行技术规则
我想知道,我们应该如何执行IBM ODM技术规则中写的规则。我正在使用 ODM V8.0.1。我已经尝试如下。
我创建了一个名为 Courier.java 的类的 XOM
公共类 Courier { 私有字符串 courierType; 私人int距离;
带有 getter 和 setter
}
我创建了一个添加此 XOM 的规则项目并创建了相应的 BOM。
- 我已将 Courier 对象添加为 IN_OUT 规则集参数,名称为“courier”
然后用下面的代码创建了一个技术规则
当 { cour : Courier(); }
then { note("Courier Object Check is Satisfied"); }
创建了一个规则流,其中只有一个规则任务指向上述技术规则。
然后我运行这个规则流
运行方式 --> 运行配置
- 在运行配置对话框中,编写下面的函数来创建快递对象并
运行配置。
com.seldart.Courier cour=新的 com.seldart.Courier(); 返回球场;
规则流执行持续了 2 秒,但 note() 方法中的语句未
在控制台中打印。- 在运行配置对话框中,编写下面的函数来创建快递对象并
我不确定,规则流是否没有选择技术规则本身运行或快递对象未被识别?请指导我以正确的方式执行此技术规则。谢谢。
websphere - Websphere Cobra.NoResponse 请求超时
在触发我们的规则 5 分钟后,我收到以下错误(在决策中心的 SystemOut.log 中),它一直是 5 分钟。规则集从决策中心发送到决策服务器,因为我可以在决策服务器中看到规则。
以下是我在决策中心的 SystemErr.log 中遇到的错误:
决策服务器和决策中心的 ORB 服务参数如下: -请求超时:300 秒 -定位请求超时:300 秒 -线程池设置是使用与 ORB 服务直接关联的线程池设置
决策中心的事务服务参数如下: -总事务生命周期超时:300 秒 -Aysnc 响应超时:30 秒 -客户端不活动超时:60 秒 -最大事务超时:300 秒
决策服务器的事务服务参数如下: -总事务生命周期超时:5000 秒 -Aysnc 响应超时:30 秒 -客户端不活动超时:120 秒 -最大事务超时:900 秒
我该如何解决这个问题?谢谢!
ilog - 如何在 IBM WODM8.x 中的 B2X 虚拟方法中使用集合
我正在尝试在 b2x 虚拟方法中使用集合(列表)
B2X 方法 - 参数 -
但是当我编写规则时,它不允许 List 对象。这里有什么问题?
jrules - 在 res 中将 Xom 添加到托管 URI
我正在研究 ILOG。目前我正在使用 Ant 脚本将 ruleapp 部署到 res。我的问题是当我部署它时工作正常,但我想将 xom 自动添加到 res 中的“添加托管 URI”选项卡。xom 正在附加到 ruleapp,但我想让它附加到托管 uri 部分。
提前致谢。