public static <T> T unmarshal(final JAXBContext context, final Class<T> clazz, final String data,
final XmlAdapter<?, ?>... adapters) {
if (data != null) {
final String trimmed = data.trim();
if (trimmed.length() > 0) {
try {
final Unmarshaller unmarshaller = context.createUnmarshaller();
if (adapters != null) {
for (final XmlAdapter<?, ?> adapter : adapters) {
unmarshaller.setAdapter(adapter);
}
}
final JAXBElement<T> jaxbElement = unmarshaller.unmarshal(
new StreamSource(new ByteArrayInputStream(trimmed.getBytes(StandardCharsets.UTF_8))),
clazz);
return jaxbElement.getValue();
} catch (final JAXBException e) {
throw new RuntimeException("Invalid XML " + trimmed, e);
}
}
}
return null;
}
XMLMarshallerUtil.java 文件源码
java
阅读 31
收藏 0
点赞 0
评论 0
项目:stroom-stats
作者:
评论列表
文章目录