Почему j8583 Configparser терпит неудачу без значения по умолчанию для полей шаблона?
Я использую j8583 для создания и анализа сообщений ISO. У меня есть шаблон и разбор config.xml
на месте, но если для полей шаблона не заданы значения по умолчанию, произойдет сбой с NullPointerException.
Ниже приведен шаблон, который завершается с NullPointerException.
поле 3
не имеет значения по умолчанию.
<template type="0200">
<field num="3" type="NUMERIC" length="6"></field>
<field num="32" type="LLVAR">456</field>
<field num="35" type="LLVAR">4591700012340000=</field>
<field num="43" type="ALPHA" length="40">SOLABTEST TEST-3 DF MX</field>
<field num="49" type="ALPHA" length="3">484</field>
<field num="60" type="LLLVAR">B456PRO1+000</field>
<field num="61" type="LLLVAR"> 1234P</field>
<field num="100" type="LLVAR">999</field>
<field num="102" type="LLVAR">ABCD</field>
1 ответ
Решение
Ну, вы указываете поле 3, чтобы быть числовым полем из 6 цифр, и вы не установили никакого значения. Странно, что вы получаете NPE, должно быть NumberFormatException, когда он пытается проанализировать пустую строку.
Пожалуйста, отправьте вопрос на github.com/chochos/j8583, и я посмотрю на него (я автор j8583).
А пока попробуйте установить значение на 0. Или, если вам не нужно поле, просто опустите его в шаблоне.