Reputation: 77
Field 64 error packing with ISOMsg
Here is my code
ISOMsg o = new ISOMsg();
o.set(64, "00000000");
byte[] data = o.pack();
Error:
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
Upvotes: 1
Views: 1382
Reputation: 1343
This question has many problems:
1) It is not real code, it's just a snippet of a few lines. You are now showing where you assign a packager to your newly created ISOMsg
2) Field 64 is a binary field, so you have to set a byte[] instead of String. If you want all zeros, you can try `ISOUtil.hex2byte("00000000");
Upvotes: 2