List of usage examples for org.dom4j.io SAXReader resetHandlers
public void resetHandlers()
From source file:org.craftercms.cstudio.alfresco.service.impl.PersistenceManagerServiceImpl.java
License:Open Source License
/** * get document from dm content//from w ww.j a v a 2 s . c o m * * @param fullPath * @param nodeRef * @return document * @throws ServiceException */ protected Document getDocumentFromDmContent(String fullPath, NodeRef nodeRef) throws ServiceException { if (nodeRef == null) { return null; } FileFolderService fileFolderService = getService(FileFolderService.class); ContentReader reader = fileFolderService.getReader(nodeRef); SAXReader saxReader = new SAXReader(); InputStream is = null; try { is = reader.getContentInputStream(); return saxReader.read(is); } catch (DocumentException e) { if (LOGGER.isErrorEnabled()) { LOGGER.error("Failed to read content from " + fullPath, e); } return null; } catch (Exception e) { if (LOGGER.isErrorEnabled()) { LOGGER.error("Failed to read content from " + fullPath, e); } return null; } finally { ContentUtils.release(is); is = null; reader = null; saxReader.resetHandlers(); saxReader = null; } }
From source file:org.craftercms.cstudio.alfresco.service.impl.PersistenceManagerServiceImpl.java
License:Open Source License
public Document loadXml(NodeRef nodeRef) { if (nodeRef == null) { return null; }/* ww w. j a v a 2s . c o m*/ FileFolderService fileFolderService = getService(FileFolderService.class); ContentReader contentReader = fileFolderService.getReader(nodeRef); InputStream in = null; SAXReader reader = new SAXReader(); try { in = contentReader.getContentInputStream(); Document document = reader.read(in); return document; } catch (Exception e) { if (LOGGER.isErrorEnabled()) { LOGGER.error("Failed to load a file.", e); } } finally { ContentUtils.release(in); in = null; contentReader = null; reader.resetHandlers(); reader = null; } return null; }
From source file:org.craftercms.cstudio.publishing.processor.SearchUpdateFlattenXmlProcessor.java
License:Open Source License
private Document flattenXml(String root, File file, Set<String> flattenedFiles) throws IOException, DocumentException, URISyntaxException { SAXReader reader = new SAXReader(); SAXReader includeReader = new SAXReader(); try {//from w w w. j a v a 2 s. c om reader.setEncoding(charEncoding); Document document = reader.read(file); List<Element> includeElements = document.selectNodes(includeElementXPathQuery); if (CollectionUtils.isEmpty(includeElements)) { return document; } for (Element includeElement : includeElements) { String includeSrcPath = root + File.separatorChar + includeElement.getTextTrim(); if (StringUtils.isEmpty(includeSrcPath)) { continue; } File includeFile = new File(includeSrcPath); if (includeFile != null && includeFile.exists()) { flattenedFiles.add(includeSrcPath); Document includeDocument = flattenXml(root, includeFile, flattenedFiles); if (logger.isDebugEnabled()) { logger.debug("Include found in " + file.getAbsolutePath() + ": " + includeSrcPath); } doInclude(includeElement, includeSrcPath, includeDocument); } } return document; } finally { reader.resetHandlers(); reader = null; includeReader.resetHandlers(); includeReader = null; } }