powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / проверка валидности xml
2 сообщений из 2, страница 1 из 1
проверка валидности xml
    #38183263
Nymph666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени!
В общем-то все просто:
есть xml файл, который затем обрабатывается с помощью JAXB.
Но перед тем как его обработать необходимо проверить его на валидность.
Насколько я поняла, нужно его сравнить со схемой xsd.
Вопрос: как это сделать?
Есть ли встроенные средства в JAXB или может быть это можно сделать как-то еще?
Заранее спасибо.
...
Рейтинг: 0 / 0
проверка валидности xml
    #38183427
ivanra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Встроенное средство есть. XSD необходимо загрузить в объект Schema и подключить к анмаршалеру, после этого можно грузить xml.
Дополнительно можно обработать ошибки используя какой-нибудь ValidationEventHandler, например, ValidationEventCollector:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
	    SchemaFactory sf = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
	    URL url = getClass().getResource("schema.xsd");
	    Schema s = sf.newSchema(url);
	    unmarshaller.setSchema(s);
	    
	    ValidationEventCollector collector = new ValidationEventCollector();
	    unmarshaller.setEventHandler(collector);

	    try {
	    	Object result = unmarshaller.unmarshal(inputStream);
	    	return result;
	    } catch (JAXBException e) {
	    	collector.getEvents() - тут ошибки
	    }
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / проверка валидности xml
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]