forrest-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jim Dixon <...@dixons.org>
Subject Re: xinclude
Date Mon, 04 Sep 2006 09:52:58 GMT
On Mon, 4 Sep 2006, Ross Gardler wrote:

> > The question is not whether XInclude works in Forrest.  It's a simple
> > how-to: how do you XInclude a text file in a Forrest document?
>
> I appreciate that, but you already have the "how-to" from Thorstens
> previous responses and the existing Forrest code (do a search for
> xi:include in the plugins directory, you will find it in use. For now,
> read on...

Searching forrest/plugins with
  grep -e "xi:include" -rl * | grep -v svn
I found two files in which XInclude is used.

> >>If it does work then it is something to do with your use of Xinclude,
> >
> > My only use of XInlude appears above.  In logMeIn.xml I
> >
> > (a) add an xmlns:xi attribute to the document element
> > (b) add the xi:xinclude element
> >
> > Is either incorrect?  Is there something else I should be doing?
>
> No that is fine. You also define the xinclude transformer in your
> sitemap, this is not necessary as it is defined in the root Forrest
> sitemap, but it will not be causing a problem.

There was actually an error here:
 <document xmlns:xi="http//www.w3.org/2001/XInclude">
The colon after "http" was omitted.

If the colon is inserted, then we once again get

Message: Resource Not Found
Description: The requested resource "/eg/logMeIn.html" could not be found.
Sender: org.apache.cocoon.servlet.CocoonServlet
Source: Cocoon Servlet

and the logs contain
---------------------------------------------------------------------------
WARN    (2006-09-04) 10:15.19:459   [access] (/eg/logMeIn.html) PoolThread-4/CocoonServlet:
Resource not found.
	at <map:serialize type="xml-document"> - file:/home/j2ee/forrest/main/webapp/forrest.xmap:230:47
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/forrest.xmap:128:65
	at <map:generate> - file:/home/j2ee/forrest/main/webapp/forrest.xmap:226:42
	at <map:serialize> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:326:23
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:324:73
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:318:72
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:296:42
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:571:65
	at <map:transform type="linkrewriter"> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:570:79
	at <map:transform type="xinclude"> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:569:41
	at <map:transform type="idgen"> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:568:38
	at <map:generate> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:567:49
	at <map:serialize> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:326:23
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:324:73
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:318:72
	at <map:transform> - file:/home/j2ee/forrest/main/webapp/sitemap.xmap:296:42
---------------------------------------------------------------------------
Yes, this is a warning, but it does appear to be quite relevant.

If I reintroduce the error (delete the colon), then the error message goes
away.

The error occurs at line 230 in main/forrest.xmap, which is the
serialization stage in i18n of XML files.  It looks to me like the
preceding transform-to-document stage is producing the wrong type of
content.

> One thing I did not pick up on in your original post, but want to
> clarify now is the line:
>
> "foo.txt is just a line of nonsense."
>
> Is it a line of *XML* nonsense? The XInclude transformer is an
> implementation of the XINclude specification which is an XML
> specification (see the Cocoon docs Thorsten pointed you at). It will
> only work with XML source files.

;-)

--
Jim Dixon  jdd@dixons.org   tel +44 117 982 0786  mobile +44 797 373 7881

Mime
View raw message