/**
* Decodeer een object.
* @param configuration configuratie
* @param clazz te decoderen object
* @param reader reader om XML van de lezen
* @param <T> type van het object
* @return het gedecodeerde object
* @throws ConfigurationException bij configuratie problemen (annoties op de klassen)
* @throws DecodeException bij decodeer problemen
*/
public static <T> T decode(final Configuration configuration, final Class<T> clazz, final Reader reader) throws XmlException {
final Context context = new Context();
final Configuration theConfiguration = configuration == null ? DEFAULT_CONFIGURATION : configuration;
ConfigurationHelper.setConfiguration(context, theConfiguration);
final Root<T> item = theConfiguration.getModelFor(clazz);
// Jaxp first
final Document document;
try {
final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
final DocumentBuilder builder = factory.newDocumentBuilder();
document = builder.parse(new InputSource(reader));
} catch (ParserConfigurationException | SAXException | IOException e) {
throw new DecodeException(context.getElementStack(), e);
}
return item.decode(context, document);
}
Xml.java 文件源码
java
阅读 31
收藏 0
点赞 0
评论 0
项目:OperatieBRP
作者:
评论列表
文章目录