Как обрабатывать escape-символы с помощью маршаллера JAXBJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как обрабатывать escape-символы с помощью маршаллера JAXB

Сообщение Anonymous »

Я использую JAXB Marshaller и хочу экранировать символы. Например, двойные кавычки " отображаются как �.
Как с ними справиться?
Я устанавливаю свойства, следуя другим подобным сообщения, но я не решил проблему.
Код:
JAXBContext jc = JAXBContext.newInstance(object.getClass().getPackage().getName());
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty("jaxb.encoding", "Unicode");
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
marshaller.setProperty(CharacterEscapeHandler.class.getName(), new CharacterEscapeHandler() {
@Override
public void escape(char[] ch, int start, int length, boolean isAttVal, Writer out) throws IOException {
out.write( ch, start, length );
}
});
marshaller.marshal(object, stringWriter);


Подробнее здесь: https://stackoverflow.com/questions/486 ... marshaller
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»