1

我是 JPOS 的新手。我想将一组子字段添加到带有位图的单个字段中。我尝试使用以下 URL,但没有得到任何好的结果。

使用 JPOS 的 PISO 8583 子字段

我想做的事 :

我必须发送“0100”请求。在这种情况下,我想将 CVV 值放入“126.10”字段。字段“126”有很多子字段,字段“126”有一个位图。

是否可以使用 JPOS 做这种情况?如果可能的话,我们怎么能做到这一点。如果您有任何样品,请帮助我完成此任务。

谢谢你。

4

2 回答 2

0

使用 jPos,可以在打包器 XML 文件中配置 isofieldpackager,如下例所示。“emitBitmap”属性确定字段 56 是否有位图。

在字段 56 中带有 SubFieldPackager 的示例打包程序 MXL 文件:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE isopackager PUBLIC
        "-//jPOS/jPOS Generic Packager DTD 1.0//EN"
        "http://jpos.org/dtd/generic-packager-1.0.dtd">

<isopackager>
    <isofield id="0" length="4" name="MESSAGE TYPE INDICATOR" pad="true" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="1" length="8" name="BIT MAP" class="org.jpos.iso.IFB_BITMAP" />
    <isofield id="2" length="99" name="?" class="org.jpos.iso.IFB_LLNUM" />
    <isofield id="3" length="6" name="PROCESSING CODE" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="11" length="6" name="?" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="12" length="6" name="?" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="13" length="4" name="?" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="14" length="4" name="?" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="24" length="3" name="?" class="org.jpos.iso.IFB_NUMERIC" />
    <isofield id="39" length="2" name="?" class="org.jpos.iso.IF_CHAR" />
    <isofield id="41" length="8" name="?" class="org.jpos.iso.IF_CHAR" />
    <isofield id="42" length="999" name="?" class="org.jpos.iso.IFB_LLLBINARY" />
    <isofieldpackager id="56" length="999" name="ADDITIONAL TRANSACTION DATA" class="org.jpos.iso.IFB_LLLBINARY"
        packager="org.jpos.iso.packager.GenericSubFieldPackager" emitBitmap="true">
        <isofield id="1" length="2" name="PHONE PREFIX" pad="true" class="org.jpos.iso.IFB_NUMERIC" />
        <isofield id="2" length="9" name="PHONE" pad="true" class="org.jpos.iso.IFB_NUMERIC" />
        <isofield id="3" length="99" name="?" class="org.jpos.iso.IFB_LLBINARY" />
    </isofieldpackager>
    <isofield id="61" length="999" name="SERVER INFORMATIONS" class="org.jpos.iso.IFB_LLLCHAR" />
</isopackager>

该文件的项目可以在以下链接的存储库中找到。它们是发送和响应 ISO 8583 消息的简单项目。

ISO 8583 项目的存储库:
https ://github.com/alexlirio/iso-sender
https://github.com/alexlirio/iso-responder

于 2018-01-04T15:40:11.953 回答
0

就我而言,我需要像这样包含位图字段。

        <isofield 
            id="0" 
            length="8" 
            name="BIT MAP" 
            class="org.jpos.iso.IFA_BITMAP" />

还要在 isofieldpackager 标签上设置这两个属性。

        emitBitmap="true"
        bitmapField="0"
<isofieldpackager 
        id="56" 
        length="999"
        name="ADDITIONAL TRANSACTION DATA" 
        class="org.jpos.iso.IFA_LLLNUM"
        packager="org.jpos.iso.packager.GenericSubFieldPackager"
        emitBitmap="true"
        bitmapField="0">
        <isofield 
            id="0" 
            length="8" 
            name="BIT MAP" 
            class="org.jpos.iso.IFA_BITMAP" />
        <isofield 
            id="1" 
            length="2" 
            name="???" 
            pad="true"
            class="org.jpos.iso.IFA_NUMERIC" />
        <isofield 
            id="2" 
            length="9" 
            name="???" 
            pad="true"
            class="org.jpos.iso.IFA_NUMERIC" />
        <isofield 
            id="3" 
            length="99" 
            name="???"
            class="org.jpos.iso.IFA_NUMERIC" />
    </isofieldpackager>
于 2021-02-11T13:50:48.510 回答