List of usage examples for org.hibernate.internal.util.xml XMLHelper XMLHelper
public XMLHelper()
From source file:org.jboss.tools.hibernate4_0.ConfigurationFactory.java
License:Open Source License
@SuppressWarnings("unchecked") private Configuration loadConfigurationXML(Configuration localCfg, boolean includeMappings, EntityResolver entityResolver) { File configXMLFile = prefs.getConfigXMLFile(); if (!includeMappings) { org.dom4j.Document doc;//from www.j ava2s. c om XMLHelper xmlHelper = new XMLHelper(); InputStream stream = null; String resourceName = "<unknown>"; //$NON-NLS-1$ if (configXMLFile != null) { resourceName = configXMLFile.toString(); try { stream = new FileInputStream(configXMLFile); } catch (FileNotFoundException e1) { throw new HibernateConsoleRuntimeException( ConsoleMessages.ConsoleConfiguration_could_not_access + configXMLFile, e1); } } else { resourceName = "/hibernate.cfg.xml"; //$NON-NLS-1$ if (checkHibernateResoureExistence(resourceName)) { stream = ConfigHelper.getResourceAsStream(resourceName); // simulate hibernate's // default look up } else { return localCfg; } } try { List<Throwable> errors = new ArrayList<Throwable>(); doc = xmlHelper.createSAXReader(resourceName, errors, entityResolver).read(new InputSource(stream)); if (errors.size() != 0) { throw new MappingException(ConsoleMessages.ConsoleConfiguration_invalid_configuration, errors.get(0)); } List<Node> list = doc.getRootElement().element("session-factory").elements("mapping"); //$NON-NLS-1$ //$NON-NLS-2$ for (Node element : list) { element.getParent().remove(element); } DOMWriter dw = new DOMWriter(); Document document = dw.write(doc); return localCfg.configure(document); } catch (DocumentException e) { throw new HibernateException( ConsoleMessages.ConsoleConfiguration_could_not_parse_configuration + resourceName, e); } finally { try { if (stream != null) stream.close(); } catch (IOException ioe) { // log.warn( "could not close input stream for: " + resourceName, ioe ); } } } else { if (configXMLFile != null) { return localCfg.configure(configXMLFile); } else { Configuration resultCfg = localCfg; if (checkHibernateResoureExistence("/hibernate.cfg.xml")) { //$NON-NLS-1$ resultCfg = localCfg.configure(); } return resultCfg; } } }