【规则引擎连载7】 WebSphere ILOG JRules 开发——BOM更新

引言

    通常根据需求的变更,接口文档的调整,业务对象模型需要有部分一些新增,删除或者修改等操作。那么此时需要首先更新业务对象的Java项目,然后重新打出jar包,覆盖原有的jar包,然后bom更新。同时还要BOM更新时的一些问题的处理。
示例:属性改名:cooperateName 改为 cooperateCode 

 一、java项目中修改该属性,并根据需求添加get和set方法。


二、保存之后导出为jar包

    之前有介绍,这里不做赘述

三、将导出的jar包覆盖项目的xom文件夹下原有的jar包

此时会出现报错信息,报错原因为XOM与BOM不同步,一般在BOM更新之后,便不会有报错了,但特殊情况下可能任然存在报错情况,此时需要根据报错信息而定。


四、bom更新

4.1 bom文件夹下“模型“ 右键 “BOM更新”

4.2 BOM更新视图下,提示“检测到 XOM和BOM类之间的区别”,“区别和操作”输入框中有内容可选。点开可输入下拉框,其中有“删除BOM属性cooperateName”和“不建议使用属性cooperateName”  的选项  。

4.3 在“区别和操作 ”下,点击“执行和保存”按钮,进行更新。
4.4 对于新增的属性,回弹出如下提示框,用语言描述BOM,勾选全选,并点击完成

4.5  如果有多处改变,则需要执行多次BOM更新,即点击多次“执行和保存”按钮,直到BOM更新视图提示“未检测到XOM和BOM类之间的区别”,此时,“区别和操作”输入框中无内容可选。
4.6 更新完成之后,依然会出现项目报错的情况,打开项目,可看到“cooperateName”与“cooperateCode”两个属性 都有,且“cooperateName”报错。
五、BOM更新出现的问题已经解决方案
报错原因:下拉框中的选项,“不建议使用BOM属性cooperateName”在前,“删除BOM属性cooperateName”在后。如果是按照默认的顺序,依次执行和保存,则会在执行“不建议使用BOM属性cooperateName”完成时,代码中会增加一段代码( deprecated "true"),该段代码的意思是该属性已弃用。但不会删除该属性。
此时“删除BOM属性cooperateName”的选项会根据系统的自动构建而消失。所以属性“cooperateName”在BOM中依然存在,而在XOM中已经不存在了,所以报错。
解决方法:
(一)、在执行BOM更新时,优先执行“删除BOM属性cooperateName”;
(二)、在执行完成后,打开该属性“cooperateName”所在的类,在“成员”中找到该属性,选中后,点击右侧的删除按钮,保存即可。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值