Добавить набор подполей с битовой картой к сообщению ISO 8583, используя JPOS

Я новичок в JPOS. Я хочу добавить набор подполей в одно поле с растровым изображением. Я попытался с помощью следующего URL, но я не получил хороший результат.

Подполе PISO 8583 с использованием JPOS

Что я хочу сделать:

Я должен отправить запрос "0100". В этом случае я хочу поместить значение CVV в поле "126.10". Поле "126" имеет много подполей, а поле "126" имеет битовую карту.

Можно ли сделать такой случай с использованием JPOS? Если это возможно, как мы можем это сделать. Если у вас есть образец, пожалуйста, помогите мне выполнить эту задачу.

Спасибо.

2 ответа

С помощью jPos можно настроить isofieldpackager в XML-файле упаковщика, как показано в примере ниже. Свойство "emitBitmap" определяет, будет ли поле 56 иметь растровое изображение.

Пример MXL-файла упаковщика с SubFieldPackager в поле 56:

<?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

В моем случае мне нужно включить поле растрового изображения, подобное этому.

              <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>
Другие вопросы по тегам