Java 类org.springframework.util.xml.XmlValidationModeDetector 实例源码
项目:gemini.blueprint
文件:LocalFileSystemMavenRepository.java
/**
* Returns the <code>localRepository</code> settings as indicated by the
* <code>settings.xml</code> file.
*
* @return local repository as indicated by a Maven settings.xml file
*/
String getMavenSettingsLocalRepository(Resource m2Settings) {
// no file found, return null to continue the discovery process
if (!m2Settings.exists()) {
return null;
}
try {
DocumentLoader docLoader = new DefaultDocumentLoader();
Document document = docLoader.loadDocument(new InputSource(m2Settings.getInputStream()), null, null,
XmlValidationModeDetector.VALIDATION_NONE, false);
return (DomUtils.getChildElementValueByTagName(document.getDocumentElement(), LOCAL_REPOSITORY_ELEM));
} catch (Exception ex) {
throw new RuntimeException(new ParserConfigurationException("error parsing resource=" + m2Settings).initCause(ex));
}
}
项目:spring-osgi
文件:LocalFileSystemMavenRepository.java
/**
* Returns the <code>localRepository</code> settings as indicated by the
* <code>settings.xml</code> file.
*
* @return local repository as indicated by a Maven settings.xml file
*/
String getMavenSettingsLocalRepository(Resource m2Settings) {
// no file found, return null to continue the discovery process
if (!m2Settings.exists())
return null;
try {
DocumentLoader docLoader = new DefaultDocumentLoader();
Document document = docLoader.loadDocument(new InputSource(m2Settings.getInputStream()), null, null,
XmlValidationModeDetector.VALIDATION_NONE, false);
return (DomUtils.getChildElementValueByTagName(document.getDocumentElement(), LOCAL_REPOSITORY_ELEM));
}
catch (Exception ex) {
throw (RuntimeException) new RuntimeException(new ParserConfigurationException("error parsing resource="
+ m2Settings).initCause(ex));
}
}
项目:gemini.blueprint
文件:MavenPackagedArtifactFinder.java
/**
* Returns the <tt>groupId</tt> setting in a <tt>pom.xml</tt> file.
*
* @return a <tt>pom.xml</tt> <tt>groupId</tt>.
*/
String getGroupIdFromPom(Resource pomXml) {
try {
DocumentLoader docLoader = new DefaultDocumentLoader();
Document document = docLoader.loadDocument(new InputSource(pomXml.getInputStream()), null, null,
XmlValidationModeDetector.VALIDATION_NONE, false);
String groupId = DomUtils.getChildElementValueByTagName(document.getDocumentElement(), GROUP_ID_ELEM);
// no groupId specified, try the parent definition
if (groupId == null) {
if (log.isTraceEnabled())
log.trace("No groupId defined; checking for the parent definition");
Element parent = DomUtils.getChildElementByTagName(document.getDocumentElement(), "parent");
if (parent != null)
return DomUtils.getChildElementValueByTagName(parent, GROUP_ID_ELEM);
}
else {
return groupId;
}
}
catch (Exception ex) {
throw (RuntimeException) new RuntimeException(new ParserConfigurationException("error parsing resource="
+ pomXml).initCause(ex));
}
throw new IllegalArgumentException("no groupId or parent/groupId defined by resource ["
+ pomXml.getDescription() + "]");
}
项目:lams
文件:DefaultDocumentLoader.java
/**
* Create the {@link DocumentBuilderFactory} instance.
* @param validationMode the type of validation: {@link XmlValidationModeDetector#VALIDATION_DTD DTD}
* or {@link XmlValidationModeDetector#VALIDATION_XSD XSD})
* @param namespaceAware whether the returned factory is to provide support for XML namespaces
* @return the JAXP DocumentBuilderFactory
* @throws ParserConfigurationException if we failed to build a proper DocumentBuilderFactory
*/
protected DocumentBuilderFactory createDocumentBuilderFactory(int validationMode, boolean namespaceAware)
throws ParserConfigurationException {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(namespaceAware);
if (validationMode != XmlValidationModeDetector.VALIDATION_NONE) {
factory.setValidating(true);
if (validationMode == XmlValidationModeDetector.VALIDATION_XSD) {
// Enforce namespace aware for XSD...
factory.setNamespaceAware(true);
try {
factory.setAttribute(SCHEMA_LANGUAGE_ATTRIBUTE, XSD_SCHEMA_LANGUAGE);
}
catch (IllegalArgumentException ex) {
ParserConfigurationException pcex = new ParserConfigurationException(
"Unable to validate using XSD: Your JAXP provider [" + factory +
"] does not support XML Schema. Are you running on Java 1.4 with Apache Crimson? " +
"Upgrade to Apache Xerces (or Java 1.5) for full XSD support.");
pcex.initCause(ex);
throw pcex;
}
}
}
return factory;
}
项目:spring4-understanding
文件:DefaultDocumentLoader.java
/**
* Create the {@link DocumentBuilderFactory} instance.
* @param validationMode the type of validation: {@link XmlValidationModeDetector#VALIDATION_DTD DTD}
* or {@link XmlValidationModeDetector#VALIDATION_XSD XSD})
* @param namespaceAware whether the returned factory is to provide support for XML namespaces
* @return the JAXP DocumentBuilderFactory
* @throws ParserConfigurationException if we failed to build a proper DocumentBuilderFactory
*/
protected DocumentBuilderFactory createDocumentBuilderFactory(int validationMode, boolean namespaceAware)
throws ParserConfigurationException {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(namespaceAware);
if (validationMode != XmlValidationModeDetector.VALIDATION_NONE) {
factory.setValidating(true);
if (validationMode == XmlValidationModeDetector.VALIDATION_XSD) {
// Enforce namespace aware for XSD...
factory.setNamespaceAware(true);
try {
factory.setAttribute(SCHEMA_LANGUAGE_ATTRIBUTE, XSD_SCHEMA_LANGUAGE);
}
catch (IllegalArgumentException ex) {
ParserConfigurationException pcex = new ParserConfigurationException(
"Unable to validate using XSD: Your JAXP provider [" + factory +
"] does not support XML Schema. Are you running on Java 1.4 with Apache Crimson? " +
"Upgrade to Apache Xerces (or Java 1.5) for full XSD support.");
pcex.initCause(ex);
throw pcex;
}
}
}
return factory;
}
项目:spring-data-jpa-extra
文件:XmlNamedTemplateResolver.java
@Override
public Iterator<Void> doInTemplateResource(Resource resource, final NamedTemplateCallback callback)
throws Exception {
InputSource inputSource = new InputSource(resource.getInputStream());
inputSource.setEncoding(encoding);
Document doc = documentLoader.loadDocument(inputSource, entityResolver, errorHandler,
XmlValidationModeDetector.VALIDATION_XSD, false);
final List<Element> sqes = DomUtils.getChildElementsByTagName(doc.getDocumentElement(), "sql");
return new Iterator<Void>() {
int index = 0, total = sqes.size();
@Override
public boolean hasNext() {
return index < total;
}
@Override
public Void next() {
Element sqle = sqes.get(index);
callback.process(sqle.getAttribute("name"), sqle.getTextContent());
index++;
return null;
}
@Override
public void remove() {
//ignore
}
};
}
项目:spring
文件:DefaultDocumentLoader.java
/**
* Create the {@link DocumentBuilderFactory} instance.
* @param validationMode the type of validation: {@link XmlValidationModeDetector#VALIDATION_DTD DTD}
* or {@link XmlValidationModeDetector#VALIDATION_XSD XSD})
* @param namespaceAware whether the returned factory is to provide support for XML namespaces
* @return the JAXP DocumentBuilderFactory
* @throws ParserConfigurationException if we failed to build a proper DocumentBuilderFactory
*/
protected DocumentBuilderFactory createDocumentBuilderFactory(int validationMode, boolean namespaceAware)
throws ParserConfigurationException {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(namespaceAware);
if (validationMode != XmlValidationModeDetector.VALIDATION_NONE) {
factory.setValidating(true);
if (validationMode == XmlValidationModeDetector.VALIDATION_XSD) {
// Enforce namespace aware for XSD...
factory.setNamespaceAware(true);
try {
factory.setAttribute(SCHEMA_LANGUAGE_ATTRIBUTE, XSD_SCHEMA_LANGUAGE);
}
catch (IllegalArgumentException ex) {
ParserConfigurationException pcex = new ParserConfigurationException(
"Unable to validate using XSD: Your JAXP provider [" + factory +
"] does not support XML Schema. Are you running on Java 1.4 with Apache Crimson? " +
"Upgrade to Apache Xerces (or Java 1.5) for full XSD support.");
pcex.initCause(ex);
throw pcex;
}
}
}
return factory;
}
项目:class-guard
文件:DefaultDocumentLoader.java
/**
* Create the {@link DocumentBuilderFactory} instance.
* @param validationMode the type of validation: {@link XmlValidationModeDetector#VALIDATION_DTD DTD}
* or {@link XmlValidationModeDetector#VALIDATION_XSD XSD})
* @param namespaceAware whether the returned factory is to provide support for XML namespaces
* @return the JAXP DocumentBuilderFactory
* @throws ParserConfigurationException if we failed to build a proper DocumentBuilderFactory
*/
protected DocumentBuilderFactory createDocumentBuilderFactory(int validationMode, boolean namespaceAware)
throws ParserConfigurationException {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(namespaceAware);
if (validationMode != XmlValidationModeDetector.VALIDATION_NONE) {
factory.setValidating(true);
if (validationMode == XmlValidationModeDetector.VALIDATION_XSD) {
// Enforce namespace aware for XSD...
factory.setNamespaceAware(true);
try {
factory.setAttribute(SCHEMA_LANGUAGE_ATTRIBUTE, XSD_SCHEMA_LANGUAGE);
}
catch (IllegalArgumentException ex) {
ParserConfigurationException pcex = new ParserConfigurationException(
"Unable to validate using XSD: Your JAXP provider [" + factory +
"] does not support XML Schema. Are you running on Java 1.4 with Apache Crimson? " +
"Upgrade to Apache Xerces (or Java 1.5) for full XSD support.");
pcex.initCause(ex);
throw pcex;
}
}
}
return factory;
}
项目:spring-osgi
文件:MavenPackagedArtifactFinder.java
/**
* Returns the <tt>groupId</tt> setting in a <tt>pom.xml</tt> file.
*
* @return a <tt>pom.xml</tt> <tt>groupId</tt>.
*/
String getGroupIdFromPom(Resource pomXml) {
try {
DocumentLoader docLoader = new DefaultDocumentLoader();
Document document = docLoader.loadDocument(new InputSource(pomXml.getInputStream()), null, null,
XmlValidationModeDetector.VALIDATION_NONE, false);
String groupId = DomUtils.getChildElementValueByTagName(document.getDocumentElement(), GROUP_ID_ELEM);
// no groupId specified, try the parent definition
if (groupId == null) {
if (log.isTraceEnabled())
log.trace("No groupId defined; checking for the parent definition");
Element parent = DomUtils.getChildElementByTagName(document.getDocumentElement(), "parent");
if (parent != null)
return DomUtils.getChildElementValueByTagName(parent, GROUP_ID_ELEM);
}
else {
return groupId;
}
}
catch (Exception ex) {
throw (RuntimeException) new RuntimeException(new ParserConfigurationException("error parsing resource="
+ pomXml).initCause(ex));
}
throw new IllegalArgumentException("no groupId or parent/groupId defined by resource ["
+ pomXml.getDescription() + "]");
}
项目:gen-sbconfigurator
文件:DefaultXsdValidator.java
@Override
public void validate(final InputStream xmlStream)
throws ValidationFailedException {
try {
if (xsdSchema == null) {
// get the source
final InputSource inputSource = new InputSource(xmlStream);
final EntityResolver resolver = new DelegatingEntityResolver(getClass()
.getClassLoader());
// use the DocumentLoader for validation, the DocumentLoader uses the
// defined XSD of the document, it tries to use the one distributed via
// the jar, otherwise it looks up the URL
documentLoader.loadDocument(inputSource, resolver, errorHandler,
XmlValidationModeDetector.VALIDATION_XSD, true);
} else {
// get the sources
final Source xmlSource = new StreamSource(xmlStream);
final Validator validator = xsdSchema.newValidator();
// validate the document using the default Validator
validator.validate(xmlSource);
}
} catch (final Exception e) {
throw new ValidationFailedException("The loaded or the validation failed.", e);
}
}
项目:gen-sbconfigurator
文件:DefaultConfiguration.java
/**
* Loads the <code>Document</code> from the specified
* {@link org.springframework.core.io.Resource Resource}.
*
* @param res
* the resource to load the {@link Document} from
*
* @return the <code>Document</code> specified by the passed
* <code>Resource</code>
*/
protected Document loadDocument(
final org.springframework.core.io.Resource res) {
// get the resource as encoded one
final EncodedResource encRes = new EncodedResource(res);
// read the XML document and replace the placeholders
InputStream inputStream = null;
InputSource inputSource = null;
Document doc = null;
try {
inputStream = encRes.getResource().getInputStream();
inputSource = new InputSource(inputStream);
if (encRes.getEncoding() != null) {
inputSource.setEncoding(encRes.getEncoding());
}
// get the Document
final DefaultDocumentLoader loader = new DefaultDocumentLoader();
doc = loader.loadDocument(inputSource, null, null,
XmlValidationModeDetector.VALIDATION_NONE, false);
} catch (final Exception e) {
// log it
if (LOG.isWarnEnabled()) {
LOG.warn(
"Unable to parse the passed ByteArrayResource '"
+ res.getDescription() + "'.", e);
}
throw new IllegalArgumentException(
"The passed resource contains an invalid document.", e);
} finally {
// close the streams
Streams.closeIO(inputSource);
Streams.closeIO(inputStream);
}
return doc;
}