Execute the specified command. This logic only performs the common
attribute validation required by all subclasses; it does not perform
any functional logic directly.
if (path == null) {
throw new BuildException("Must specify 'path'");
}
File file = new File(path, Constants.ApplicationWebXml);
if ((!file.exists()) || (!file.canRead())) {
throw new BuildException("Cannot find web.xml");
}
Digester digester = ContextConfig.createWebXmlDigester(true, true);
try {
file = file.getCanonicalFile();
InputStream stream =
new BufferedInputStream(new FileInputStream(file));
InputSource is = new InputSource(file.toURL().toExternalForm());
is.setByteStream(stream);
digester.parse(is);
} catch (Throwable t) {
throw new BuildException("Validation failure", t);
}