使用jPOS的ISO8583可变长度的字段

时间:2017-05-04 10:56:10

标签: iso8583 jpos

我正在使用jPOS创建ISO8583消息,我使用的是genericpackager,但它似乎只支持固定长度的数据字段。如果字段的长度可变,我想在字段之前添加字段的长度。 我在下面使用:

<isofield
  id="34"
  length="32"
  name="Extended Primary Account Number"
  class="org.jpos.iso.IF_CHAR"/>

和.java文件isoMsg.set(34, "12345ABCDE");

我需要做些什么更改才能在字段之前添加字段的长度。

1 个答案:

答案 0 :(得分:3)

对于每个isofield - 您需要修改类以匹配相应字段配置的要求。

http://jpos.org/doc/javadoc/org/jpos/iso/packager/GenericPackager.html

例如,您可以使用任何带有长度指示符(L)的isofield类 如:

class="org.jpos.iso.IFA_LLCHAR"/>

或者

class="org.jpos.iso.IFB_LLNUM"/>

支持可变长度字段。

第一个例子是ASCII 2字节长度,第二个例子是二进制2字节长度。

您可以在此处找到示例通用打包商列表:https://github.com/jpos/jPOS/tree/master/jpos/src/dist/cfg/packager

您可以在此处找到isofield类列表(以IF_开头):https://github.com/jpos/jPOS/tree/master/jpos/src/main/java/org/jpos/iso