Java - JAXB считывает значение элемента как массив без сохранения его строкового значения - PullRequest
0 голосов
/ 16 июня 2020

Я использую JAXB для чтения какого-то файла паролей.

<password expiry-date="some date">PASSWORD</password>

Требуется никогда не сохранять значение пароля в памяти в виде простого текста.

Я написал адаптер класс, чтобы демаршалировать значение пароля как массив символов.

public class PasswordAdapter extends XmlAdapter<String, char[]> {

   @Override
   public String marshal(char[] v) {
      return new String(v);
   }

   @Override
   public char[] unmarshal(String v) {
      return v.toCharArray();
   }
}

Это поле, которое неупорядочено:

@XmlValue
@XmlJavaTypeAdapter(PasswordAdapter.class)
private char[] password;

Проблема с этим решением заключается в том, что пароль по-прежнему читается как строка перед сохранением в виде массива в этом случае.

Мой вопрос:

Есть ли способ прочитать значение элемента пароля непосредственно как массив или просто что-то, что не является простой текстовой строкой?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...