为什么 j8583 配置解析器失败,模板字段没有默认值



我正在使用j8583来构建和解析ISO消息。我有我的模板和解析config.xml,但是当没有为模板字段指定默认值时,它会失败并显示 NullPointerException

下面是因 NullPointerException 而失败的模板。

字段3没有任何默认值。

<template type="0200">
<field num="3" type="NUMERIC" length="6"></field>
<field num="32" type="LLVAR">456</field>
<field num="35" type="LLVAR">4591700012340000=</field>
<field num="43" type="ALPHA" length="40">SOLABTEST             TEST-3       DF MX</field>
<field num="49" type="ALPHA" length="3">484</field>
<field num="60" type="LLLVAR">B456PRO1+000</field>
<field num="61" type="LLLVAR">        1234P</field>
<field num="100" type="LLVAR">999</field>
<field num="102" type="LLVAR">ABCD</field>

好吧,

您将字段 3 指定为 6 位数字字段,并且您没有设置任何值。奇怪的是,你得到NPE,当它尝试解析空字符串时应该是NumberFormatException。

请在 github.com/chochos/j8583 上提交一个问题,我会调查它(我是j8583的作者)。

同时,请尝试将该值设置为 0。或者,如果您不需要该字段,只需从模板中省略它。

最新更新