Thank you!  That was the key I needed.  It turns out
the file was being deployed to the web-app's WEB-INF
directory.  The quartz code that parses the document
uses ClassLoader.getResourceAsStream to get the
document.  Unfortunately the servlet container class
loader didn't wasn't reading the WEB-INF directory,
but rather the WEB-INF/classes & WEB-INF/lib
directory.  Moving the deployment location allowed the
classloader to find the doc and parse it.

Thanks again!

--- Michael Glavassevich <[EMAIL PROTECTED]> wrote:
> Hello Jon,
> 
> From the error message it looks like the parser is
> being passed a 
> org.xml.sax.InputSource with all null fields. That
> would explain the 
> failure.
> 
> Jon Wilmoth <[EMAIL PROTECTED]> wrote on
> 07/21/2004 07:18:04 PM:
> 
> > I'm having problems parsing an xml config doc of
> an
> > open source scheduling tool (Quartz).  The
> document
> > (below)is well formed and valid. I'm able to
> > successfully validate it using and xml editor
> (Stylus
> > Studio) and with Xerces in a stand-alone command
> line
> > parsing utility.  However, when the document is
> parsed
> > during server startup (Tomcat v5.0.25) I get the
> > following exception:
> > 
> > Jul-21-2004 4:04:12:720 PM, PDT [INFO ]
> > (org.quartz.xml.JobSchedulingDataProcessor:?) --
> > Parsing XML file:
> > webapps/chronos/web-inf/ScheduledJobs.xml with
> > systemId: null validating: true validating schema:
> > file:/C:/dev/java/jakarta/tomcat-5.0.
> > 
>
25/work/Catalina/localhost/chronos/loader/org/quartz/xml/job_scheduling_data_1_1.
> > xsd
> > Jul-21-2004 4:04:12:740 PM, PDT [ERROR]
> > (org.quartz.plugins.xml.JobInitializationPlugin:?)
> --
> > Error scheduling jobs: null
> > java.net.MalformedURLException
> >    at java.net.URL.<init>(URL.java:571)
> >    at java.net.URL.<init>(URL.java:434)
> >    at java.net.URL.<init>(URL.java:383)
> >    at
> >
>
org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown
> > Source)
> >    at
> >
>
org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown
> > Source)
> >    at
> >
>
org.apache.xerces.parsers.XML11Configuration.parse(Unknown
> > Source)
> >    at
> >
>
org.apache.xerces.parsers.XML11Configuration.parse(Unknown
> > Source)
> >    at
> org.apache.xerces.parsers.XMLParser.parse(Unknown
> > Source)
> >    at
> >
>
org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown
> > Source)
> >    at
> >
>
org.apache.commons.digester.Digester.parse(Digester.java:1548)
> >    at
> > org.quartz.xml.JobSchedulingDataProcessor.
> > processFile(JobSchedulingDataProcessor.java:369)
> >    at
> > org.quartz.xml.JobSchedulingDataProcessor.
> >
>
processFileAndScheduleJobs(JobSchedulingDataProcessor.java:394)
> >    at
> > org.quartz.plugins.xml.JobInitializationPlugin.
> > processFile(JobInitializationPlugin.java:347)
> >    at
> > org.quartz.plugins.xml.JobInitializationPlugin.
> > start(JobInitializationPlugin.java:317)
> >    at
> >
>
org.quartz.core.QuartzScheduler.startPlugins(QuartzScheduler.java:1800)
> >    at
> >
>
org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:367)
> >    at
> >
>
org.quartz.impl.StdScheduler.start(StdScheduler.java:149)
> >    at
> > org.quartz.ee.servlet.QuartzInitializerServlet.
> > init(QuartzInitializerServlet.java:126)
> >    at
> > org.apache.catalina.core.StandardWrapper.
> > loadServlet(StandardWrapper.java:1019)
> >    at
> >
>
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
> >    at
> > org.apache.catalina.core.StandardContext.
> > loadOnStartup(StandardContext.java:3991)
> >    at
> > 
>
org.apache.catalina.core.StandardContext.start(StandardContext.java:4335)
> >    at
> >
>
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
> >    at
> >
>
org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
> >    at
> >
>
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
> >    at
> >
>
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
> >    at
> >
>
org.apache.catalina.core.StandardService.start(StandardService.java:476)
> >    at
> >
>
org.apache.catalina.core.StandardServer.start(StandardServer.java:2298)
> >    at
> >
>
org.apache.catalina.startup.Catalina.start(Catalina.java:556)
> >    at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> >    at
> > 
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >    at
> > sun.reflect.DelegatingMethodAccessorImpl.
> > invoke(DelegatingMethodAccessorImpl.java:25)
> >    at
> java.lang.reflect.Method.invoke(Method.java:324)
> >    at
> >
>
org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:284)
> >    at
> >
>
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:422)
> > 
> > 
> > 
> > What is the root cause for this failure?  What is
> it
> > that Xerces is trying to do that it can't?
> > 
> > 
> > <?xml version="1.0" encoding="utf-8"?>
> > <!DOCTYPE quartz SYSTEM
> > 
>
"file:///apex/projects/internal/timeentry/extlib/job_scheduling_data_1_0.dtd">
> > <quartz>
> >  <job>
> >   <job-detail>
> >    <name>ExpireRoleAssignmentsJob</name>
> >    <group>authorization</group>
> > 
> > <job-class>com.apex.chronos.app.authorization.
> > ExpireRoleAssignmentsJob</job-class>
> >    <volatility>true</volatility>
> >    <durability>false</durability>
> >    <recover>false</recover>
> >   </job-detail>
> >   <trigger>
> >    <cron>
> >     <name>ExpireRolesCronTrigger</name>
> >     <group>authorization-triggers</group>
> >     <job-name>ExpireRoleAssignmentsJob</job-name>
> >     <job-group>authorization</job-group>
> >     <!-- Every day at 11:55pm -->
> >     <cron-expression>0 55 23 ? *
> *</cron-expression>
> >     <time-zone>America/Los_Angeles</time-zone>
> >    </cron>
> >   </trigger>
> >  </job>
> > </quartz>
> > 
> > 
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> > 
> 
> Michael Glavassevich
> XML Parser Development
> IBM Toronto Lab
> E-mail: [EMAIL PROTECTED]
> E-mail: [EMAIL PROTECTED]


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

Reply via email to