Класс JAXBResult
- java.lang.Object
-
- javax.xml.transform.sax.SAXResult
-
- javax.xml.bind.util.JAXBResult
- Все реализуемые интерфейсы:
- Result
public class JAXBResult extends SAXResult
Реализация JAXP Result для разбора объекта JAXB.
Этот вспомогательный класс полезен для объединения JAXB с другими технологиями Java/XML.
Следующий пример демонстрирует использование JAXB для разбора документа, полученного в результате преобразования XSLT.
JAXBResult result = new JAXBResult(
JAXBContext.newInstance("org.acme.foo") );
// set up XSLT transformation
TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = tf.newTransformer(new StreamSource("test.xsl"));
// run transformation
t.transform(new StreamSource("document.xml"),result);
// obtain the unmarshalled content tree
Object o = result.getResult();
Тот факт, что JAXBResult наследуется от SAXResult, является деталью реализации. Поэтому в общих приложениях настоятельно не рекомендуется обращаться к методам, определённым в SAXResult.
В частности, никогда не следует пытаться вызвать методы setHandler, setLexicalHandler и setSystemId.
Поля
Наследуемые поля из класса javax.xml.transform.sax.SAXResult
FEATURE
Наследуемые поля из интерфейса javax.xml.transform.Result
PI_DISABLE_OUTPUT_ESCAPING, PI_ENABLE_OUTPUT_ESCAPING
Конструкторы
| Конструктор и описание |
|---|
JAXBResult(JAXBContext context)
Создаёт новый экземпляр, использующий указанный JAXBContext для разбора. |
JAXBResult(Unmarshaller _unmarshaller)
Создаёт новый экземпляр, использующий указанный Unmarshaller для разбора объекта. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
Object |
getResult()
Получает объект, разобранный в результате преобразования. |
Наследуемые методы из класса javax.xml.transform.sax.SAXResult
getHandler, getLexicalHandler, getSystemId, setHandler, setLexicalHandler, setSystemId
Наследуемые методы из класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Подробное описание конструкторов
JAXBResult
public JAXBResult(JAXBContext context)
throws JAXBException
Создаёт новый экземпляр, использующий указанный JAXBContext для разбора.
- Параметры:
-
context- JAXBContext, который будет использован для создания необходимого Unmarshaller. Этот параметр не должен быть null. - Исключения:
-
JAXBException- если возникла ошибка при создании JAXBResult или параметр context равен null.
JAXBResult
public JAXBResult(Unmarshaller _unmarshaller)
throws JAXBException
Создаёт новый экземпляр, использующий указанный Unmarshaller для разбора объекта.
Этот объект JAXBResult будет использовать указанный экземпляр Unmarshaller. Ответственность за то, чтобы не использовать тот же Unmarshaller для других целей, пока он используется этим объектом, лежит на вызывающей стороне.
Основная цель этого метода заключается в возможности настройки Unmarshaller. Если вы не уверены, как это сделать, проще и безопаснее передать JAXBContext.
- Параметры:
-
_unmarshaller- unmarshaller. Этот параметр не должен быть null. - Исключения:
-
JAXBException- если возникла ошибка при создании JAXBResult или параметр Unmarshaller равен null.
Подробное описание методов
getResult
public Object getResult()
throws JAXBException
Получает объект, разобранный в результате преобразования.
- Возвращает:
- Всегда возвращает не-null объект.
- Исключения:
-
IllegalStateException- если этот метод вызывается до разбора объекта. -
JAXBException- если произошла ошибка разбора. Реализация имеет право бросить SAXException во время парсинга при обнаружении ошибки.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.