Michael,

When I run the SchemaReader I got the below response. LSResourceResolver is 
getting called but I do not know why validation is failing. What I am missing ?

Thanks
Ajay

debug1
Schema File Name : Company.xsd
System Id:Person.xsd
baseURI:file:///tmp/ajay/xslt/Company.xsd
File Path /tmp/ajay/xslt/Person.xsd
XXXXXXX : /tmp/ajay/xslt/Person.xsd
System Id:Product.xsd
baseURI:file:///tmp/ajay/xslt/Company.xsd
File Path /tmp/ajay/xslt/Product.xsd
XXXXXXX : /tmp/ajay/xslt/Product.xsd
File Name : Company.xml
GGGGGG
org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of 
element 'Company'.



--- On Wed, 11/12/08, ajay bhadauria <[EMAIL PROTECTED]> wrote:

> From: ajay bhadauria <[EMAIL PROTECTED]>
> Subject: Re: use of ResourceResolver in Schema Parsing
> To: j-users@xerces.apache.org
> Date: Wednesday, November 12, 2008, 8:43 PM
> Michael,
> 
> I tried to implemented LSResourceResolver different way and
> it seems that it is resolving external entities but when it
> tried to validate it fails.
> 
> I do not know what else I am missing ?
> 
> Please find the attached java , xsd and xml file.
> 
> Regards
> Ajay.
> 
> 
> --- On Wed, 11/12/08, Michael Glavassevich
> <[EMAIL PROTECTED]> wrote:
> 
> > From: Michael Glavassevich <[EMAIL PROTECTED]>
> > Subject: Re: use of ResourceResolver in Schema Parsing
> > To: j-users@xerces.apache.org
> > Date: Wednesday, November 12, 2008, 3:09 AM
> > Hi Ajay,
> > 
> > The NullPointerException could have come from any
> number of
> > places. It
> > would help if you posted a stack trace.
> > 
> > Also, though it doesn't appear it was even called
> your
> > LSResourceResolver
> > is making assumptions about the format of the systemId
> > which aren't
> > generally true.  It's a URI (e.g.
> http://www.w3.org),
> > not a file path. It
> > doesn't look like you're trying to do anything
> in
> > the resolver which the
> > parser wouldn't already do by default. If
> that's
> > all you were planning to
> > do there there's not much point in registering a
> > resolver.
> > 
> > Thanks.
> > 
> > Michael Glavassevich
> > XML Parser Development
> > IBM Toronto Lab
> > E-mail: [EMAIL PROTECTED]
> > E-mail: [EMAIL PROTECTED]
> > 
> > ajay bhadauria <[EMAIL PROTECTED]> wrote on
> > 11/11/2008 11:42:30 AM:
> > 
> > > Hi,
> > >
> > > I was trying to implement LSResourceResolver to
> load
> > multiple
> > > Schemas in my SchemaFactory but I am getting
> > nullpointer Exception.
> > > Below is the code. Please tell me what I am
> missing
> > here ?
> > >
> > > Thanks
> > > Ajay B.
> > >
> > > import java.io.*;
> > > import java.util.*;
> > > import org.w3c.dom.* ;
> > > import org.w3c.dom.ls.* ;
> > > import org.xml.sax.InputSource;
> > > import org.xml.sax.EntityResolver;
> > > import java.net.URL;
> > > //import org.w3c.dom.ls.DOMImplementationLS;
> > > import org.w3c.dom.ls.*;
> > > import javax.xml.XMLConstants;
> > > import javax.xml.validation.SchemaFactory;
> > > import javax.xml.validation.Schema;
> > > import
> org.w3c.dom.bootstrap.DOMImplementationRegistry
> > ;
> > >
> > > public class SchemaReader
> > > {
> > >
> > >   private static int errorCount = 0;
> > >   String schemaName = null ;
> > >   public SchemaReader(String st)
> > >   {
> > >      System.out.println("debug2");
> > >      schemaName = st;
> > >      System.out.println("debug3");
> > >      Schema schema =  loadSchema( schemaName );
> > >      System.out.println("debug4");
> > >   }
> > >
> > >   public static void main(String[] a)
> > >   {
> > >      if (a.length<1)
> > >      {
> > >           System.out.println("Usage:");
> > >           System.out.println("java
> > XsdSchemaValidator
> > > schema_file_name " +
> "xml_file_name");
> > >      }
> > >      else
> > >      {
> > >          //String schemaName = a[0];
> > >          System.out.println("debug1");
> > >          SchemaReader sr = new
> SchemaReader(a[0]);
> > >          //Schema schema =
> sr.loadSchema(schemaName);
> > >      }
> > >    }
> > >
> > >   public Schema loadSchema(String name)
> > >   {
> > >     Schema schema = null;
> > >     try
> > >     {
> > >       System.out.println("xxx1");
> > >       String language =
> > XMLConstants.W3C_XML_SCHEMA_NS_URI;
> > >       System.out.println("xxx2");
> > >       SchemaFactory factory =
> > SchemaFactory.newInstance(language);
> > >       System.out.println("xxx3");
> > >       MyResourceResolver resolver = new
> > MyResourceResolver();
> > >       System.out.println("xxx4");
> > >       factory.setResourceResolver( resolver );
> > >       System.out.println("xxx5");
> > >       System.out.println(name);
> > >       schema = factory.newSchema(new File(name));
> > >       System.out.println("xxx6");
> > >
> > >     }
> > >     catch (Exception e)
> > >     {
> > >       System.out.println(e.toString());
> > >     }
> > >      return schema;
> > >   }
> > >
> > >
> > >   public  class MyResourceResolver implements
> > LSResourceResolver
> > >   {
> > >            DOMImplementationLS implLS ;
> > >            public MyResourceResolver()
> > >            {
> > >                 try
> > >                 {
> > >                
> > System.setProperty(DOMImplementationRegistry.
> > > PROPERTY,
> >
> "org.apache.xerces.dom.DOMImplementationSourceImpl");
> > >
> > >                 DOMImplementationRegistry
> registry =
> > >                         
> > DOMImplementationRegistry.newInstance();
> > >                 DOMImplementation domImpl =
> > >                         
> > registry.getDOMImplementation("LS 3.0");
> > >                 DOMImplementationLS implLS =
> > (DOMImplementationLS)domImpl;
> > >                 }
> > >                 catch ( Exception e)
> > >                 {
> > >                    
> > System.out.println("xxx");
> > >                    
> System.out.println(e.toString());
> > >
> > >                 }
> > >            }
> > >
> > >
> > >            public LSInput resolveResource(String
> type,
> > String
> > > namespaceURI, String publicId, String systemId,
> String
> > baseURI )
> > >            {
> > >                 LSInput input =
> > implLS.createLSInput();
> > >                 System.out.println("System
> Id
> > :" + systemId);
> > >                 System.out.println("Base URI
> > :" + baseURI);
> > >                 FileInputStream fis =  null;
> > >                 try
> > >                 {
> > >                      fis =  new
> FileInputStream(new
> > File(systemId));
> > >                 }
> > >                 catch(Exception e)
> > >                 {
> > >                     
> > System.out.println("debug1");
> > >                     
> System.out.println(e.toString());
> > >                 }
> > >
> > >                 input.setByteStream(fis);
> > >                 input.setSystemId(systemId);
> > >                 return input ;
> > >                 //return fis ;
> > >
> > >             }
> > >
> > >
> > >    }
> > >
> > > }
> > >
> > > Output
> > > ========
> > >
> > > debug1
> > > debug2
> > > debug3
> > > xxx1
> > > xxx2
> > > xxx3
> > > xxx4
> > > xxx5
> > > clpt.001.001.01.xsd
> > > java.lang.NullPointerException
> > > debug4
> > >
> > >
> > > --- On Tue, 11/11/08, ajay bhadauria
> > <[EMAIL PROTECTED]> wrote:
> > >
> > > > From: ajay bhadauria
> <[EMAIL PROTECTED]>
> > > > Subject: Re: use of ResourceResolver in
> Schema
> > Parsing
> > > > To: j-users@xerces.apache.org
> > > > Date: Tuesday, November 11, 2008, 7:35 PM
> > > > Hi,
> > > >
> > > > I could not figure out how to implement
> > LSResourceResolver
> > > > with SchemaFactory so that all external
> entities
> > could be
> > > > loaded when main schema gets loaded.
> > > >
> > > > Any code sample will be greatly appriciated
> .
> > > >
> > > > Thanks
> > > >
> > > > --- On Mon, 11/10/08, ajay bhadauria
> > > > <[EMAIL PROTECTED]> wrote:
> > > >
> > > > > From: ajay bhadauria
> > <[EMAIL PROTECTED]>
> > > > > Subject: use of ResourceResolver in
> Schema
> > Parsing
> > > > > To: j-users@xerces.apache.org
> > > > > Date: Monday, November 10, 2008, 8:24
> PM
> > > > > Hi,
> > > > >
> > > > > I am using SchemaFactory and then from
> > factory I am
> > > > setting
> > > > > setResourceResolver to resolve external
> > entities.
> > > > while
> > > > > reading schema which refers to other
> schemas
> > through
> > > > import
> > > > > and include, but I am not able to
> construct
> > LSInput in
> > > > > resolveResource method of
> LSResourceResolver
> > > > interface.
> > > > >
> > > > > What should I do to construct the
> LSInput in
> > > > > resolveResource method ?
> > > > >
> > > > > Please find the attached java file.
> Please
> > help me how
> > > > I
> > > > > should do it ?
> > > > >
> > > > > Regards
> > > > >
> > > > > Ajay
> > > > >
> > > >
> >
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail:
> > > > > [EMAIL PROTECTED]
> > > > > For additional commands, e-mail:
> > > > > [EMAIL PROTECTED]
> > > >
> > > >
> >
> ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > > > [EMAIL PROTECTED]
> > > > For additional commands, e-mail:
> > > > [EMAIL PROTECTED]
> > >
> > >
> >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > [EMAIL PROTECTED]
> > > For additional commands, e-mail:
> > [EMAIL PROTECTED]
> 
> 
>      
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]


      

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to