I have been struggling with this issue for two weeks now.
When I send an echomessage packed with ISO93BPackager to my server, I get this error at the server side.
<unpack>
49534F383538332D31393933303031303030303030180482200110000000000000000C0000000010152244345214580831201016060000360A1000000000
<bitmap>{2, 5, 6, 7, 8, 11, 12, 13, 19, 20, 22, 24, 27, 28, 29, 35, 36, 39, 40, 43, 45, 46, 48, 51, 52, 56, 59, 60, 61, 64}</bitmap>
<unpack fld="2" packager="org.jpos.iso.IFB_LLNUM">
<value>333030313030303030301804822001100000000</value>
</unpack>
<unpack fld="5" packager="org.jpos.iso.IFB_NUMERIC">
<value>0000000C0000</value>
</unpack>
<unpack fld="6" packager="org.jpos.iso.IFB_NUMERIC">
<value>000010152244</value>
</unpack>
<unpack fld="7" packager="org.jpos.iso.IFB_NUMERIC">
<value>3452145808</value>
</unpack>
<unpack fld="8" packager="org.jpos.iso.IFB_NUMERIC">
<value>31201016</value>
</unpack>
<unpack fld="11" packager="org.jpos.iso.IFB_NUMERIC">
<value>060000</value>
</unpack>
<unpack fld="12" packager="org.jpos.iso.IFB_NUMERIC">
<value>360A10000000</value>
</unpack>
<iso-exception>
org.jpos.iso.IFB_NUMERIC: Problem unpacking field 13
<nested-exception>
java.lang.ArrayIndexOutOfBoundsException: 62
at org.jpos.iso.ISOUtil.bcd2str(ISOUtil.java:333)
at org.jpos.iso.BCDInterpreter.uninterpret(BCDInterpreter.java:67)
at org.jpos.iso.ISOStringFieldPackager.unpack(ISOStringFieldPackager.java:173)
at org.jpos.iso.ISOBasePackager.unpack(ISOBasePackager.java:233)
The server receives the message with the header 49534F383538332D31393933303031303030303030180482200110000000000000000C0000000010152244345214580831201016060000360A1000000000
And its (server) trying to unpack all these fields <bitset>{2, 5, 6, 7, 8, 11, 12, 13, 19, 20, 22, 24, 27, 28, 29, 35, 36, 39, 40, 43, 45, 46, 48, 51, 52, 56, 59, 60, 61, 64}</bitset>
instead of these BitSet : {7, 11, 24, 28, 93, 94} because these the only fields present in the message.
Please your unfailing assistance.
Regards.