Hi,
I have the following code. When I compile this code, do the
compiler generates two separate class file for SchemaValidator and
Validator?
package transform;
import oracle.xml.schemavalidator.XSDValidator;
import oracle.xml.parser.schema.XSDException;
import oracle.xml.parser.schema.XMLSchema;
import oracle.xml.parser.schema.XSDBuilder;
import oracle.xml.parser.v2.XMLError;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import org.xml.sax.helpers.DefaultHandler;
import java.net.URL;
public class SchemaValidator{
public void validateSchema(String SchemaUrl, String
XmlDocumentUrl)
{
try {
XSDValidator xsdValidator=new XSDValidator();
XSDBuilder builder = new XSDBuilder();
URL url = new URL(SchemaUrl);
XMLSchema schemadoc =
(XMLSchema)builder.build(url);
xsdValidator.setSchema(schemadoc);
Validator handler=new Validator();
XMLError xmlError=new XMLError();
xmlError.setErrorHandler(handler);
xsdValidator.setError(xmlError);
xsdValidator.validate(new
URL(XmlDocumentUrl));
if(handler.validationError==true)
System.out.println("This XML Document
has Error: " + handler.saxParseException.getMessage());
else
System.out.println("This XML Document
is valid");
}catch(java.lang.NullPointerException npe)
{
System.out.println("NullPointerException
"+npe.getMessage());
}
catch(java.io.IOException ioe)
{
System.out.println("IOException
"+ioe.getMessage());
}catch (SAXException e) {
System.out.println("SAXException
"+e.getMessage());
}
catch (XSDException e) {
System.out.println("SAXException
"+e.getMessage());
}
}
private class Validator extends DefaultHandler{
public boolean validationError = false;
public SAXParseException saxParseException=null;
alidationError = true;
saxParseException=exception;
}
public void fatalError(SAXParseException exception)
throws SAXException{
validationError = true;
saxParseException=exception;
}
public void warning(SAXParseException exception)
throws SAXException{}
}
public static void main(String[] argv){
try{
String SchemaUrl=argv[0];
String XmlDocumentUrl=argv[1];
SchemaValidator validator=new SchemaValidator();
System.out.println("am inside the java
schemavalidator");
validator.validateSchema(SchemaUrl, XmlDocumentUrl);
System.out.println("am inside the java
schemavalidator");*/
} catch(java.lang.NullPointerException npe)
{
System.out.println("NullPointerException");
}
}
}
Joe Attardi - 16 Aug 2007 18:50 GMT
> Hi,
> I have the following code. When I compile this code, do the
> compiler generates two separate class file for SchemaValidator and
> Validator?
Hi ramu,
Why don't you try it and see? That's often the best way to learn things.
Compile your code and look at how many .class files are generated.

Signature
Joe Attardi
jattardi@gmail.com
Roedy Green - 16 Aug 2007 22:33 GMT
>I have the following code. When I compile this code, do the
>compiler generates two separate class file for SchemaValidator and
>Validator?
Why are you afraid to perform the experiment?
I will discover every anonymous class also gets its own *.class file.

Signature
Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com