2014-10-01 3 views
5

Я реализую ATM Simulator, который принимает ISO8583 сообщение от клиента и распаковывает его с помощью библиотеки jPOS. Ошибка, возникшая при распаковке моего сообщения: «поле распаковки ошибок 102: negativearraysizeexception». Я исследовал об этой ошибке и подумал о добавлении регистратора в свою программу, чтобы при печати я получил информацию о том, какие данные идут в это поле.
код, который я включить в моем существующие приложения Java выглядит следующим образом:jPOS logger: добавить регистратор в упаковщик

Logger logger = new Logger(); 
logger.addListener (new SimpleLogListener(System.out)); 
((LogSource)p).setLogger(logger, "debug");// p is my ISOPackger 

Это дает мне ошибку компиляции, как
1- Конструктор Logger() не определено

2 Метод добавления слушателя не определено для тип Logger

3- LogSource не может быть разрешен к типу

мне помочь в решении этих ошибок. Любая помощь будет оценена по достоинству. Заранее спасибо.

ответ

4

Что касается этой "ошибки распаковки поля 102: NegativeArraySizeException" ошибки

я могу помочь, потому что это случилось со мной.

Проверьте файл iso87cscascii.xml в папке конфигурации, каждая длина и тип поля в этом файле должны быть идентичны полученному ISO-сообщению.

Возможно, номер поля в ошибке (102), где произошла эта ошибка, пожалуйста, проверьте это поле точно, а также проверьте другие поля, чтобы гарантировать, что ошибка не повторится.

2

Не могли бы вы разместить полный класс java? Я предполагаю, что вы добавили неправильные JPOS библиотеки

1- Конструктор Logger() не определено

Используете ли вы импорт org.jpos.util.Logger?

2 Метод добавления слушателя не определено для типа Logger

Убедитесь, что вы используете именно JPOS библиотеку.

0

Это случилось со мной. Это был просто конфликт с регистратором SLF4J.

Смежные вопросы