[jboss-svn-commits] JBL Code SVN: r8353 - labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/config
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Dec 15 13:00:47 EST 2006
Author: ddegroff
Date: 2006-12-15 13:00:45 -0500 (Fri, 15 Dec 2006)
New Revision: 8353
Modified:
labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/config/XmlValidatorImpl.java
Log:
Modified: labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/config/XmlValidatorImpl.java
===================================================================
--- labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/config/XmlValidatorImpl.java 2006-12-15 17:06:24 UTC (rev 8352)
+++ labs/jbossesb/trunk/product/core/listeners/src/org/jboss/soa/esb/listeners/config/XmlValidatorImpl.java 2006-12-15 18:00:45 UTC (rev 8353)
@@ -67,6 +67,7 @@
@SuppressWarnings("unused")
private InputSource xmlSource, validationSource;
+ private String defaultSchema = "etc/schemas/xml/jbossesb-1.0.xsd";
/**
* The path separator
*/
@@ -75,16 +76,25 @@
private boolean isValid = true;
- private Collection<String> validationResults = new HashSet();
+ private Collection<String> validationResults = new HashSet();
private Document xmlDocument;
- public XmlValidatorImpl() {
- }
+ public XmlValidatorImpl() {
+ File defaultSchemaFile = new File (defaultSchema);
+ if (defaultSchemaFile.exists()) {
+ log.warn("defaultSchema "+defaultSchema+" exists");
+ }
+ }
- public XmlValidatorImpl(InputSource xmlSource) {
+ public XmlValidatorImpl(InputSource xmlSource) {
setXMLDocument(xmlSource);
- }
+
+ File defaultSchemaFile = new File (defaultSchema);
+ if (defaultSchemaFile.exists()) {
+ log.warn("defaultSchema "+defaultSchema+" exists");
+ }
+ }
/**
* Validation method used to validate an xml file against a default xsd (jbossesb.xsd).
@@ -93,7 +103,6 @@
* @throws XmlValidatorException Failure during validation.
*/
public boolean validate(InputSource xmlSource) throws XmlValidatorException {
- String defaultSchema = "jbossesb-1.0.xsd";
StreamSource validationInputSource = null;
InputStream validationInputStream = this.getClass().getResourceAsStream(defaultSchema);
@@ -130,38 +139,51 @@
try {
SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
if (validationSource == null) {
- Source schemaFile = new StreamSource("jbossesb.xsd");
- try {
- schema = factory.newSchema(schemaFile);
- } catch (SAXException e) {
+ Source schemaFile = new StreamSource(defaultSchema);
+ try {
+ schema = factory.newSchema(schemaFile);
+ } catch (SAXException e) {
log.error("Failed to validate xml",e);
isValid = false;
- }
}
- else {
+ }
+ else {
schema = factory.newSchema(validationSource);
}
+
// Request validation
Validator validator = schema.newValidator();
+
// Register the error handler
validator.setErrorHandler(new XmlErrorHandler());
+ DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
+ builderFactory.setValidating(true);
+ builderFactory.setNamespaceAware(true);
+ DocumentBuilder parser = null;
+
+ try {
+ parser = builderFactory.newDocumentBuilder();
+ } catch (ParserConfigurationException e) {
+ log.error("ParserConfigurationException occurred: " + e.getMessage());
+ isValid = false;
+ }
+
try {
- DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
- DocumentBuilder parser = builderFactory.newDocumentBuilder();
- xmlDocument = parser.parse(xmlSource);
-
- validator.validate(new DOMSource(xmlDocument));
- } catch (SAXException e) {
- log.error("Failed to validate xml",e);
+ xmlDocument = parser.parse(xmlSource);
+ } catch (IOException e) {
+ log.error("parser.parse(): IOException occurred: " + e.getMessage());
+ log.error(e);
isValid = false;
- } catch (ParserConfigurationException e) {
- log.error("ParserConfigurationException occurred: " + e.getMessage());
- isValid = false;
+ }
+
+ try {
+ validator.validate(new DOMSource(xmlDocument));
} catch (IOException e) {
- log.error("IOException occurred: " + e.getMessage());
- isValid = false;
- }
+ log.error("validator.validate(): IOException occurred: " + e.getMessage());
+ log.error(e);
+ isValid = false;
+ }
} catch (SAXException e) {
log.error("SAXException occurred: " + e.getMessage());
isValid = false;
@@ -193,7 +215,6 @@
}
public Collection<String> getValidationResults() {
- log.error("getValidationResults() = "+validationResults.size());
return validationResults;
}
More information about the jboss-svn-commits
mailing list