0

在我的打包器 xml 文件中,我有一个字段的子字段打包器。

规范为此定义了多个字段(比如 25 个),但我只关心第一个。所以我真的不想在我的打包程序中定义多个字段。

当请求包含多个字段时会出现问题(这很正常)。

GenericSubFieldPackager 基本上从位图大小确定字段的最大数量并循环并抛出异常,因为它看到字段 15 的位已设置但 isofield 15 未在打包程序中定义并引发异常。

我们可以修改GenericSubFieldPackager 代码吗

改变

if (fld[i] != null) {

if (i < fld.length && fld[i] != null) {

防止数组越界异常,因为 fld[15] 不存在,因为它没有在我的打包程序 xml 中定义。

4

1 回答 1

0

这个建议的修复(已经合并到 jPOS 1.9.5 中)只适用于消息的最后一部分,如果您使用的是非流通道(即它不适用于 PADChannel,它会读取消息) -飞)。

如果您关心某些字段,例如 2、3、4,而您不关心字段 5、6、7,但您关心字段 8 和 9,那么此修复当然不会起作用,如果有的话8 和/或 9 恰好出现在位图中。

于 2014-01-30T16:14:11.297 回答