Полевая ошибка с ошибкой ISOMsg
Вот мой код
ISOMsg o = new ISOMsg();
o.set(64, "00000000");
byte[] data = o.pack();
Ошибка:
Exception in thread "main" org.jpos.iso.ISOException: org.jpos.iso.IFA_BINARY Problem packing field 64 (java.lang.ClassCastException: java.lang.String cannot be cast to [B)
at org.jpos.iso.ISOBinaryFieldPackager.pack(ISOBinaryFieldPackager.java:120)
at org.jpos.iso.ISOBasePackager.pack(ISOBasePackager.java:119)
at org.jpos.iso.ISOMsg.pack(ISOMsg.java:333)
at ISO.Client.main(Client.java:53)
Nested:java.lang.ClassCastException: java.lang.String cannot be cast to [B
at org.jpos.iso.ISOBinaryFieldPackager.pack(ISOBinaryFieldPackager.java:105)
at org.jpos.iso.ISOBasePackager.pack(ISOBasePackager.java:119)
at org.jpos.iso.ISOMsg.pack(ISOMsg.java:333)
at ISO.Client.main(Client.java:53)
Java Result: 1
У этого вопроса много проблем:
1) Это не настоящий код, это всего лишь фрагмент нескольких строк. Теперь вы показываете, где вы назначаете упаковщик для вновь созданного ISOMsg
2) Поле 64 является двоичным полем, поэтому вам нужно установить байт [] вместо String. Если вы хотите все нули, вы можете попробовать "ISOUtil.hex2byte (" 00000000 ");