I have isolated the cause of the Bug. It looks like it will
be easy to fix :-) though it will need someone else to do it.
As described in Bugzilla - here is a summary ...
Everything works fine with the entity resolver when Cocoon
is running as a webapp.
However, when running as commandline context while doing
"build docs" the entity resolver delivers strange system Identifiers
(problem with file://) and then the subsequent messages "Failed
to create InputSource". (To make it more complex, this only
happens on UNIX-based platforms.)
Below i have extracted snippets from two log files. The first is
from "build docs". The second is from running Cocoon as a
webapp under Tomcat. Note the last line of each snippet.
This is where the filesystem path for the catalog is constructed
in components/resolver/ResolverImpl.java and then the catalog
is loaded by the entity resolver. Note that in the build docs case,
there is a relative pathname and in the webapp case there is a
full pathname.
Apparently the entity resolver does not like loading catalogs
using a relative pathname. This can be proven by hacking
ResolverImpl.java (around line #98) and using a hard-coded
path to the catalog. The entity resolver loads its catalog properly
and build docs proceeds properly.
So it seems that there is inconsistency when using getResource()
...
String catalogFile = params.getParameter("catalog",
"/resources/entities/catalog");
String catalogURL = this.context.getResource(catalogFile).toExternalForm();
There must be a reliable way to get the full filesystem
pathname in both situations, but i cannot see how.
-------------------
This snippet is from "build docs" ...
...
DEBUG 10068 [ ] (): ComponentFactory creating new instance of
org.apache.cocoon.components.parser.JaxpParser.
DEBUG 10068 [ ] (): Looking up
org.apache.cocoon.components.resolver.Resolver
DEBUG 10068 [ ] (): ComponentFactory creating new instance of
org.apache.cocoon.components.resolver.ResolverImpl.
DEBUG 10068 [ ] (): Setting Catalog verbosity level to 2
DEBUG 10068 [ ] (): catalogFille=/resources/entities/catalog
DEBUG 10068 [ ] (): CommandlineContext:
getResource=/resources/entities/catalog
DEBUG 10068 [ ] (): System Catalog URL is
file:./resources/entities/catalog
...
-------------------
-------------------
This snippet is from running as webapp under TomCat ...
...
DEBUG (2001-11-27) 16:36.14:778 [cocoon ] (Unknown-URI)
Unknown-thread/DefaultComponentFactory: ComponentFactory creating new
instance of org.apache.cocoon.components.resolver.ResolverImpl.
DEBUG (2001-11-27) 16:36.14:780 [cocoon ] (Unknown-URI)
Unknown-thread/DefaultComponentFactory: no logger attribute available, using
standard logger
DEBUG (2001-11-27) 16:36.14:849 [cocoon ] (Unknown-URI)
Unknown-thread/ResolverImpl: Setting Catalog verbosity level to 2
DEBUG (2001-11-27) 16:36.14:851 [cocoon ] (Unknown-URI)
Unknown-thread/ResolverImpl: catalogFile=/resources/entities/catalog
DEBUG (2001-11-27) 16:36.14:855 [cocoon ] (Unknown-URI)
Unknown-thread/ResolverImpl: System Catalog URL is
file:/usr/local/jakarta/jakarta-tomcat-3.2.2/webapps/cocoon/resources/entities/catalog
...
-------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]