Я продолжаю получать следующую ошибку при попытке отмены вызова XML-документа с использованием JAXB.Ошибка выглядит следующим образом:
cvc-elt.1: не удается найти объявление элемента 'AsifXml'
Код для отмены марширования следующий:
JAXBContext jc = JAXBContext.newInstance("asif_objects");
Unmarshaller u = jc.createUnmarshaller();
SchemaFactory sf = SchemaFactory.newInstance(
javax.xml.XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = sf.newSchema(new File("ASIF_Schema1.1.6.xsd"));
u.setSchema(schema);
AsifXml doc
= (AsifXml)u.unmarshal(new FileInputStream("asif_small.xml"));
Я считаю, что соответствующая часть файлов xsd выглядит следующим образом (пропущено открытие и закрытие тегов, поскольку я не уверен, как их форматировать на веб-сайте:
?xml version="1.0" encoding="UTF-8"?
xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:asif="http://www.website.com/ASIF"
targetNamespace="http://www.website.com/ASIF" elementFormDefault="qualified"
attributeFormDefault="unqualified" version="1.1.6"
xs:element name="AsifXml"
xs:complexType
И во что я верюбыть соответствующим XML здесь:
AsifXml xmlns:AsifXml="http://www.website.com/ASIF"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1.4"
content="study"
До сих пор я пробовал поискать в Google эту же ошибку, но, похоже, большинство ответов связано с ошибками в веб-службах, которые я не использую.Я также подумал, что, возможно, у меня возникли проблемы с проверкой, потому что я нахожусь за прокси-сервером, и он не смог достичь URL, указанного в документах схемы, но при дальнейшем исследовании у меня сложилось впечатление, что эти URL на самом деле не должны существовать дляпроверьте документ. И я попытался в другой сети, которая не находится за прокси-сервером, и получил ту же ошибку.
Любая помощь с этой проблемой очень ценится.