I want to package some schemas into a jar file to avoid having the user need to have a magic directory that they point to that contains the schemas. So I implemented an EntityResolver, but I am still getting errors. The XML file that I am reading contains references to the
following schemas: XMLSchema.xsd, xhtml1-strict.xsd and iface2.xsd Is there something that I am doing wrong? Is this a bug?


Xerces-J 2 Version: 2.1.0
JDK  1.4.1 RC1

Thanks,
-Sean


------------------------ Code --------------------------------
class MyEntityResolver extends DefaultHandler {
public InputSource resolveEntity(String publicId, String systemId) throws SAXException {
System.out.println("---->resolveEntity:" + publicId + " " + systemId);
if (systemId == null) return super.resolveEntity(publicId, systemId);
String orig_sys_id = systemId;
//extract the real entity name / is ok because it is a url
int i = systemId.lastIndexOf('/');
if (i != -1 && systemId.length() != i) {
systemId = systemId.substring(i+1,systemId.length());
}
System.out.println("----> new sys id is " + systemId);
try {
URL url = getClass().getResource("/"+systemId);
if (url == null) {
System.out.println("----> Still nothing.");
return super.resolveEntity(publicId,orig_sys_id);
}
System.out.println("----> found resource " + url.toString());
InputStream is = url.openStream();
System.out.println("----> input stream is " + is);
//new Exception().printStackTrace();
return new InputSource(is);


       } catch (IOException ioe) {
           System.out.println("Having trouble finding " + systemId +
               ", probably a CLASSPATH problem.");
           return super.resolveEntity(publicId, orig_sys_id);
       }
   }
   }


---------------- Output ----------------------------------
---->resolveEntity:null file:///home/sean/cvs/main/src/util/iface2.xsd
----> new sys id is iface2.xsd
----> found resource file:/home/sean/interface/iface2.xsd
----> input stream is [EMAIL PROTECTED]
---->resolveEntity:null file:///home/sean/cvs/main/src/util/xhtml1-strict.xsd
----> new sys id is xhtml1-strict.xsd
----> found resource file:/home/sean/interface/xhtml1-strict.xsd
----> input stream is [EMAIL PROTECTED]
---->resolveEntity:null http://www.w3.org/2001/xml.xsd
----> new sys id is xml.xsd
----> found resource file:/home/sean/interface/xml.xsd
----> input stream is [EMAIL PROTECTED]
Warn: null : L33C56 :src-import.0: Failed to read imported schema document 'null'.
---->resolveEntity:null file:///home/sean/cvs/main/src/util/XMLSchema.xsd
----> new sys id is XMLSchema.xsd
----> found resource file:/home/sean/interface/XMLSchema.xsd
----> input stream is [EMAIL PROTECTED]
Warn: null : L10C93 :src-import.0: Failed to read imported schema document 'null'.
Error: null : L303C35 :src-resolve: Cannot resolve the name 'xml:lang' to a(n) attribute declaration component.


[output truncated]




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



Reply via email to