Class XMLValidateTask
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.optional.XMLValidateTask
- All Implemented Interfaces:
- Cloneable
- Direct Known Subclasses:
- SchemaValidate
Checks XML files are valid (or only well formed). The
 task uses the SAX2 parser implementation provided by JAXP by default
 (probably the one that is used by Ant itself), but one can specify any
 SAX1/2 parser if needed.
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic classThe class to create to set a feature of the parser.static final classA Parser property.protected classValidatorErrorHandler role : log SAX parse exceptions, remember if an error occurred
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected Pathprotected XMLValidateTask.ValidatorErrorHandlerprotected booleanprotected Filefile to be validatedsets of file to be validatedprotected static final Stringprotected booleanstatic final StringMessage for successful validationprotected Stringprotected booleanprotected XMLReaderthe parser is viewed as a SAX2 XMLReader.Fields inherited from class org.apache.tools.ant.ProjectComponentdescription, location, project
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidaddConfiguredXMLCatalog(XMLCatalog catalog) add an XMLCatalog as a nested element; optional.voidaddFileset(FileSet set) specify a set of file to be checkedprotected voidcleanup()Cleans up resources.Add an attribute nested element.protected XMLReaderCreate a reader if the use of the class did not specify another one.Create a DTD location record; optional.Creates a property.protected XMLReadercreate the XML reader.protected booleandoValidate(File afile) parse the filevoidexecute()execute the taskprotected EntityResolveraccessor to the xmlCatalog used in the taskprotected XMLReaderget the XML reader.voidinit()Called by the project to let the task initialize properly.protected voidinit the parser : load the parser class, and set features if necessary It is only after this that the reader is validprotected booleantest that returns true if we are using a SAX1 parser.protected voidonSuccessfulValidation(int fileProcessed) handler called on successful file validation.voidsetClassName(String className) Specify the class name of the SAX parser to be used.voidsetClasspath(Path classpath) Specify the classpath to be searched to load the parser (optional)voidWhere to find the parser class; optional.voidsetFailOnError(boolean fail) Specify how parser error are to be handled.protected voidsetFeature(String feature, boolean value) Set a feature on the parser.voidspecify the file to be checked; optional.voidsetLenient(boolean bool) Specify whether the parser should be validating.protected voidsetProperty(String name, String value) Sets a property.voidsetWarn(boolean bool) Specify how parser error are to be handled.Methods inherited from class org.apache.tools.ant.TaskbindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskTypeMethods inherited from class org.apache.tools.ant.ProjectComponentclone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
- 
Field Details- 
INIT_FAILED_MSG- See Also:
 
- 
failOnErrorprotected boolean failOnError
- 
warnprotected boolean warn
- 
lenientprotected boolean lenient
- 
readerClassName
- 
filefile to be validated
- 
filesetssets of file to be validated
- 
classpath
- 
xmlReaderthe parser is viewed as a SAX2 XMLReader. If a SAX1 parser is specified, it's wrapped in an adapter that make it behave as a XMLReader. a more 'standard' way of doing this would be to use the JAXP1.1 SAXParser interface.
- 
errorHandler
- 
MESSAGE_FILES_VALIDATEDMessage for successful validation- See Also:
 
 
- 
- 
Constructor Details- 
XMLValidateTaskpublic XMLValidateTask()
 
- 
- 
Method Details- 
setFailOnErrorpublic void setFailOnError(boolean fail) Specify how parser error are to be handled. Optional, default istrue.If set to true(default), throw a buildException if the parser yields an error.- Parameters:
- fail- if set to- falsedo not fail on error
 
- 
setWarnpublic void setWarn(boolean bool) Specify how parser error are to be handled.If set to true(default), log a warn message for each SAX warn event.- Parameters:
- bool- if set to- falsedo not send warnings
 
- 
setLenientpublic void setLenient(boolean bool) Specify whether the parser should be validating. Default istrue.If set to false, the validation will fail only if the parsed document is not well formed XML. this option is ignored if the specified class with setClassName(String)is not a SAX2 XMLReader.- Parameters:
- bool- if set to- falseonly fail on malformed XML
 
- 
setClassNameSpecify the class name of the SAX parser to be used. (optional)- Parameters:
- className- should be an implementation of SAX2- org.xml.sax.XMLReaderor SAX2- org.xml.sax.Parser.- If className is an implementation of - org.xml.sax.Parser,- setLenient(boolean), will be ignored.- If not set, the default will be used. 
- See Also:
 
- 
setClasspathSpecify the classpath to be searched to load the parser (optional)- Parameters:
- classpath- the classpath to load the parser
 
- 
createClasspath- Returns:
- the classpath created
- See Also:
 
- 
setClasspathRefWhere to find the parser class; optional.- Parameters:
- r- reference to a classpath defined elsewhere
- See Also:
 
- 
setFilespecify the file to be checked; optional.- Parameters:
- file- the file to be checked
 
- 
addConfiguredXMLCatalogadd an XMLCatalog as a nested element; optional.- Parameters:
- catalog- XMLCatalog to use
 
- 
addFilesetspecify a set of file to be checked- Parameters:
- set- the fileset to check
 
- 
createAttributeAdd an attribute nested element. This is used for setting arbitrary features of the SAX parser. Valid attributes include- Returns:
- attribute created
- Since:
- ant1.6
 
- 
createPropertyCreates a property.- Returns:
- a property.
- Since:
- ant 1.6.2
 
- 
initCalled by the project to let the task initialize properly.- Overrides:
- initin class- Task
- Throws:
- BuildException- if something goes wrong with the build
 
- 
createDTDCreate a DTD location record; optional. This stores the location of a DTD. The DTD is identified by its public Id.- Returns:
- created DTD location
 
- 
getEntityResolveraccessor to the xmlCatalog used in the task- Returns:
- xmlCatalog reference
 
- 
getXmlReaderget the XML reader. Non-null only afterinitValidator(). If the reader is an instance ofParserAdapterthen the parser is a SAX1 parser, and you cannot callsetFeature(String, boolean)orsetProperty(String, String)on it.- Returns:
- the XML reader or null.
 
- 
executeexecute the task- Overrides:
- executein class- Task
- Throws:
- BuildException- if- failonerroris true and an error happens
 
- 
onSuccessfulValidationprotected void onSuccessfulValidation(int fileProcessed) handler called on successful file validation.- Parameters:
- fileProcessed- number of files processed.
 
- 
initValidatorprotected void initValidator()init the parser : load the parser class, and set features if necessary It is only after this that the reader is valid- Throws:
- BuildException- if something went wrong
 
- 
isSax1Parserprotected boolean isSax1Parser()test that returns true if we are using a SAX1 parser.- Returns:
- true when a SAX1 parser is in use
 
- 
createXmlReadercreate the XML reader. This is one by instantiating anything specified byreaderClassName, falling back to a default reader if not. If the returned reader is an instance ofParserAdapterthen we have created and wrapped a SAX1 parser.- Returns:
- the new XMLReader.
 
- 
cleanupprotected void cleanup()Cleans up resources.- Since:
- Ant 1.8.0
 
- 
createDefaultReaderCreate a reader if the use of the class did not specify another one. If a BuildException is thrown, the caller may revert to an alternate reader.- Returns:
- a new reader.
- Throws:
- BuildException- if something went wrong
 
- 
setFeatureSet a feature on the parser.- Parameters:
- feature- the name of the feature to set
- value- the value of the feature
- Throws:
- BuildException- if the feature was not supported
 
- 
setPropertySets a property.- Parameters:
- name- a property name
- value- a property value.
- Throws:
- BuildException- if an error occurs.
- BuildException- if the property was not supported
 
- 
doValidateparse the file- Parameters:
- afile- the file to validate.
- Returns:
- true if the file validates.
 
 
-