First I downloaded the result of invoking this unmodified pipeline.
<map:match equals="aggregation/xinclude-transformer">
<map:generate src="aggregation/xinclude.xml" />
<map:transform type="xinclude">
<map:parameter name="cacheKey" value="{map:0}"/>
</map:transform>
<map:serialize type="xml" />
</map:match>
No namespace garbage left so XIncludeTransformer seems to work fine:
<?xml version="1.0" encoding="UTF-8"?>
<sample>
<sub1>
<sub>sub</sub>
</sub1>
<sub2>
<sub>sub</sub>
</sub2>
</sample>
Next I setup the exact same pipeline in the sample block:
<map:match equals="aggregation/xinclude-transformer">
<map:generate src="aggregation/xinclude.xml" />
<map:transform type="xinclude">
<map:parameter name="cacheKey" value="{map:0}"/>
</map:transform>
<map:transform src="xslt/identity.xslt"/>
<map:serialize type="xml" />
</map:match>
No issues here.
And just to make sure that identity.xslt was actually used I slightly modified
it
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xi="http://www.w3.org/2001/XInclude">
<xsl:template match="sub1/sub">
<sub>sub replaced</sub>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Now the result becomes:
<?xml version="1.0" encoding="UTF-8"?><sample>
<sub1>
<sub xmlns:xi="http://www.w3.org/2001/XInclude">sub replaced</sub>
</sub1>
<sub2>
<sub>sub</sub>
</sub2>
</sample>
But one might wonder why you left in the xi namespace in the first place. So
next I removed that namespace from the xslt.
<?xml version="1.0" encoding="UTF-8"?>
<sample>
<sub1>
<sub>sub replaced</sub>
</sub1>
<sub2>
<sub>sub</sub>
</sub2>
</sample>
So .... I think you might recheck if you're not doing some exotic stuff which
you forgot to mention.
Robby
-----Original Message-----
From: Mansour Al Akeel [mailto:[email protected]]
Sent: Thursday, November 15, 2012 1:51 AM
To: [email protected]
Subject: Re: XInclude in sitemap.xmap
One additional problem. This is not related to the property resolution, but to
the XInclude. After I process xinclude, if I apply another transformation, I
get an error:
Caused by: org.xml.sax.SAXException: Namespace for prefix 'xi' not found.
at
org.apache.cocoon.sax.AbstractSAXTransformer.endPrefixMapping(AbstractSAXTransformer.java:79)
~[cocoon-sax-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
at
org.apache.cocoon.sax.component.XIncludeTransformer.endPrefixMapping(XIncludeTransformer.java:515)
~[cocoon-sax-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
The transformation can be any thing simple. Identity transformation will cause
this issue as well. Here's the transformation I am applying after the xinclude:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xi="http://www.w3.org/2001/XInclude">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
And here is the sitemap:
<map:match pattern="article/{id}.xml">
<map:generate
src="{global:base.repo.path}/articles/{map:id}/index.xml" />
<map:transform type="xinclude" >
<map:parameter name="cacheKey" value="{map:0}"/>
<map:parameter name="baseUrl"
value="file:///home/mansour/workspace/pipelines/repo/articles/example/"
/>
</map:transform>
<map:transform src="sheets/html/identity.xsl " />
<map:serialize type="xml" />
</map:match>
If I remove the identity.xsl step, then things works fine.
I am not sure how to solve this issue, but I think I can use two <match> one
for each step. However, knowing that cocoon applies xslt in a pipeline without
additional tweaks, should allow me to directly process the stream with
identity.xsl.
Thank you.
On Wed, Nov 14, 2012 at 7:39 PM, Mansour Al Akeel <[email protected]>
wrote:
> Robby, thank you for taking care of this issue.
>
>
>
> On Wed, Nov 14, 2012 at 12:11 PM, Robby Pelssers <[email protected]>
> wrote:
>> I'm closing in on finding the issue but not sure if I can fix it this week.
>>
>> Test 1: Use {global:propertyName} in @src of a generator works fine
>> ---------------------------------------------------------------------
>>
>> <map:match equals="aggregation/xinclude-transformer">
>> <map:generate src="aggregation/{global:testProperty}.xml" />
>> <map:transform type="xinclude">
>> <map:parameter name="cacheKey" value="{map:0}"/>
>> </map:transform>
>> <map:serialize type="xml" />
>> </map:match>
>>
>> Test2: Use {global:propertyName} in the @value of a parameter does
>> not seem to work
>> --------------------------------------------------------------------------------
>> <map:match equals="aggregation/xinclude-transformer">
>> <map:generate src="aggregation/xinclude.xml" />
>> <map:transform type="xinclude">
>> <map:parameter name="cacheKey" value="{map:0}"/>
>> <map:parameter name="baseUrl" value="{global:testProperty}"/>
>> </map:transform>
>> <map:serialize type="xml" />
>> </map:match>
>>
>>
>> The real magic happens in org.apache.cocoon.sitemap.InvocationImpl
>>
>> public Object resolveParameter(final String parameter) {
>> ....
>> }
>>
>> But I think that method is not called for evaluating @value of a
>> <map:parameter>.
>>
>> If anyone can fix this today.. be my guest. Otherwise I will take another
>> look this week (latest this weekend).
>>
>> Robby
>>
>> -----Original Message-----
>> From: Robby Pelssers [mailto:[email protected]]
>> Sent: Wednesday, November 14, 2012 5:38 PM
>> To: [email protected]
>> Subject: RE: XInclude in sitemap.xmap
>>
>> The solution you're looking for resides in using a LanguageInterpreter.
>>
>> Cocoon already has a few implementations:
>> - org.apache.cocoon.sitemap.expression.SettingsInterpreter (works
>> together with cocoon-spring-configurator)
>> - org.apache.cocoon.sitemap.expression.JexlLanguageInterpreter
>> - org.apache.cocoon.sitemap.expression.SitemapLanguageInterpreter
>>
>> http://cocoon.apache.org/3.0/apidocs/index.html
>>
>> In cocoon-expression-language.xml these are configured as beans. You see
>> that the last part after the colon is the prefix you can use in a sitemap.
>> I think you should just use the SettingsInterpreter in your case. It's the
>> default way to access properties.
>>
>>
>>
>> <beans xmlns="http://www.springframework.org/schema/beans"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="http://www.springframework.org/schema/beans
>> http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
>>
>> <bean
>> name="org.apache.cocoon.sitemap.expression.LanguageInterpreterFactory"
>>
>> class="org.apache.cocoon.sitemap.expression.PrototypeLanguageInterpre
>> terFactory" />
>>
>> <bean name="expression-language:map"
>> class="org.apache.cocoon.sitemap.expression.SitemapLanguageInterprete
>> r" />
>>
>> <bean name="expression-language:jexl"
>> class="org.apache.cocoon.sitemap.expression.JexlLanguageInterpreter"
>> />
>>
>> <bean name="expression-language:global"
>> class="org.apache.cocoon.sitemap.expression.SettingsInterpreter" />
>>
>> </beans>
>>
>> Robby
>>
>> -----Original Message-----
>> From: Robby Pelssers [mailto:[email protected]]
>> Sent: Wednesday, November 14, 2012 5:18 PM
>> To: [email protected]
>> Subject: RE: XInclude in sitemap.xmap
>>
>> I did a little test myself and by the looks of it it's not supported.
>>
>> <map:transform type="xinclude">
>> <map:parameter name="cacheKey" value="{map:0}"/>
>> <map:parameter name="baseUrl"
>> value="file:///c:/{request-param:subfolder}/"/>
>> </map:transform>
>>
>>
>> I hacked a bit in the cocoon-sample project and invoked this url:
>>
>> http://localhost:8888/aggregation/xinclude-transformer?subfolder=tmp
>>
>>
>>
>> In that case I get a nice XML exception page with following message:
>> <message>c:\{request-param:subfolder}\xinclude\testinclude.xml (The
>> filename, directory name, or volume label syntax is
>> incorrect)</message>
>>
>> This means... that input modules are not supported yet. Will be interesting
>> to see if we plan to support this in C3. But this would work in C2.2 as
>> I've used inputmodules quite a lot.
>>
>> Robby
>>
>>
>> -----Original Message-----
>> From: Mansour Al Akeel [mailto:[email protected]]
>> Sent: Wednesday, November 14, 2012 4:09 PM
>> To: [email protected]
>> Subject: Re: XInclude in sitemap.xmap
>>
>> I am using 3.0.0-beta-1-SNAPSHOT built from trunk. Here's my sitemap:
>>
>> <map:pipeline>
>> <map:match pattern="article/{id}.xml">
>> <map:generate
>> src="{global:base.repo.path}/articles/{map:id}/index.xml" />
>> <map:transform type="xinclude" >
>> <map:parameter name="cacheKey" value="{map:0}"/>
>> <map:parameter name="baseUrl"
>> value="{global:base.repo.path}/articles/{map:id}/" />
>> </map:transform>
>> <!-- <map:transform src="sheets/html/xslthl.xsl " /> -->
>> <map:serialize type="xml" />
>> </map:match>
>>
>> Here's part of the document:
>>
>> Another Example using xinclude:
>> ===============
>> <programlisting language="c">
>> <xi:include href="hello.c" parse="text"
>> xmlns:xi="http://www.w3.org/2001/XInclude"/>
>> </programlisting>
>>
>> Here's the log:
>> 15:04:37.529 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline -
>> ~ adding ParameterCacheKey(hashCode=516462290
>> parameters={encoding=UTF-8, method=xml}) for component
>> XMLSerializer(hashCode=834671663)
>> 15:04:37.530 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline -
>> Creating CompoundCacheKey(hashCode=2115562712
>> key=[TimestampCacheKey(hashCode=2006330189
>> url=file:/home/mansour/workspace/pipelines/repo/articles/example/inde
>> x.xml timestamp=1352905028000 (2012-11-14 14:57:08.0)),
>> CachedCacheKey(hashCode=772251321
>> internalCacheKey=ObjectCacheKey(hashCode=686698957
>> obj=article/example.xml)
>> cachedCacheKey=org.apache.cocoon.pipeline.caching.InvalidCacheKey@b78
>> a1f0d), ParameterCacheKey(hashCode=516462290
>> parameters={encoding=UTF-8,
>> method=xml})]) for pipeline CachingPipeline(hashCode=1875503051
>> components=[XMLGenerator(hashCode=437776393
>> internalGenerator=URLGenerator(hashCode=333002925
>> source=file:/home/mansour/workspace/pipelines/repo/articles/example/i
>> ndex.xml)),
>> XIncludeTransformer(hashCode=1313024268
>> baseUrl=file:/home/mansour/workspace/pipelines/contents/src/main/reso
>> urces/COB-INF/{global:base.repo.path}/articles/{map:id}/),
>> XMLSerializer(hashCode=834671663)])
>> 15:04:37.530 [btpool0-1] INFO o.a.cocoon.servlet.RequestProcessor - Going
>> to send NOT MODIFIED response: statusCode=304, lastModified=-1 15:04:37.530
>> [btpool0-1] INFO o.a.cocoon.servlet.RequestProcessor - Sitemap execution
>> for /article/example.xml took 195.35498 ms.
>>
>> The variables are matching the correct document, and it's served correctly,
>> but without xincludes being processed.
>>
>>
>>
>> On Wed, Nov 14, 2012 at 6:54 AM, Robby Pelssers <[email protected]>
>> wrote:
>>> I think you will need to paste the complete sitemap to get more insight
>>> into your issue. Can you please specify which version of Cocoon you're
>>> using per question.. even if repeated. I really need to know the context as
>>> some things might work differently between versions.
>>>
>>> I don't exactly remember why you used an input module. In C2.2 I use
>>> properties in combination with both the cocoon-spring-configurator
>>> to
>>> - set bean property values in the application context files
>>> - use them directly in my sitemap using ${propertyName}
>>>
>>>
>>>
>>> <map:match pattern="exportMergedFiles/*">
>>> <map:generate src="cocoon:/linkinginfo/{1}"/>
>>> <map:transform src="xslt/writeTopics.xslt" type="saxon">
>>> <map:parameter name="folderPath"
>>> value="${exportFolder}/{1}/merged"/>
>>> </map:transform>
>>> <map:serialize type="xml"/>
>>> </map:match>
>>>
>>> Robby
>>>
>>> -----Original Message-----
>>> From: Mansour Al Akeel [mailto:[email protected]]
>>> Sent: Wednesday, November 14, 2012 6:40 AM
>>> To: [email protected]
>>> Subject: Re: XInclude in sitemap.xmap
>>>
>>> Thank you both for helping.
>>> Robby,
>>> this is the message I am getting now.
>>> 05:35:08.304 [btpool0-1] DEBUG o.a.cocoon.pipeline.AbstractPipeline
>>> - Adding component XMLSerializer(hashCode=306853147) to pipeline
>>> [CachingPipeline(hashCode=1346781896
>>> components=[XMLGenerator(hashCode=1918414275
>>> internalGenerator=URLGenerator(hashCode=1966798757
>>> source=file:/home/mansour/workspace/pipelines/repo/articles/example/
>>> in dex.xml)), XIncludeTransformer(hashCode=950275600
>>> baseUrl=file:/{global:base.repo.path}/articles/{map:id}/)])].
>>> 05:35:08.304 [btpool0-1] DEBUG o.a.cocoon.pipeline.AbstractPipeline
>>> - Going to link the component XMLGenerator(hashCode=1918414275
>>> internalGenerator=URLGenerator(hashCode=1966798757
>>> source=file:/home/mansour/workspace/pipelines/repo/articles/example/
>>> in
>>> dex.xml)) with XIncludeTransformer(hashCode=950275600
>>> baseUrl=file:/{global:base.repo.path}/articles/{map:id}/).
>>> 05:35:08.304 [btpool0-1] DEBUG o.a.cocoon.pipeline.AbstractPipeline
>>> - Going to link the component XIncludeTransformer(hashCode=950275600
>>> baseUrl=file:/{global:base.repo.path}/articles/{map:id}/) with
>>> XMLSerializer(hashCode=306853147).
>>>
>>> It looks like the baseUrl is not being resolved with the input modules. For
>>> example:
>>>
>>> baseUrl=file:/{global:base.repo.path}/articles/{map:id}/
>>>
>>> Your efforts is highly appreciated.
>>> Thank you.
>>>
>>>
>>> On Tue, Nov 13, 2012 at 10:43 AM, Francesco Chicchiriccò
>>> <[email protected]> wrote:
>>>> On 13/11/2012 16:33, Robby Pelssers wrote:
>>>>> Ok..
>>>>>
>>>>> I fixed the issue:
>>>>>
>>>>> <map:match equals="aggregation/xinclude-transformer">
>>>>> <map:generate src="aggregation/xinclude.xml" />
>>>>> <map:transform type="xinclude">
>>>>> <map:parameter name="cacheKey" value="{map:0}"/>
>>>>> <map:parameter name="baseUrl" value="file:///c:/tmp/"/>
>>>>> <map:parameter name="test" value="hello world"/>
>>>>> </map:transform>
>>>>> <map:serialize type="xml" />
>>>>> </map:match>
>>>>>
>>>>> Works now.
>>>>>
>>>>> I committed the fix to Cocoon3 trunk.
>>>>
>>>> Hi Robby,
>>>> thank you for taking care of this: just tested your fix and the
>>>> build runs fine.
>>>>
>>>> For records, could you please file an issue on JIRA (COCOON3), add
>>>> your fix revision number as comment and then close it?
>>>> Thanks.
>>>>
>>>> Regards.
>>>>
>>>>> -----Original Message-----
>>>>> From: Robby Pelssers [mailto:[email protected]]
>>>>> Sent: Tuesday, November 13, 2012 2:49 PM
>>>>> To: [email protected]
>>>>> Subject: RE: XInclude in sitemap.xmap
>>>>>
>>>>> Ok... I found the problem.
>>>>>
>>>>> Inside org.apache.cocoon.sitemap.node.AbstractSitemapNode the baseUrl is
>>>>> overridden, although it correctly receives the baseUrl.
>>>>>
>>>>> invocationParams = {
>>>>> baseUrl=file:///c:/tmp/
>>>>> cacheKey={map:0}
>>>>> test=hello world
>>>>> }
>>>>>
>>>>>
>>>>> protected InvocationResult invoke(final String src, final String
>>>>> type, final Invocation invocation) {
>>>>>
>>>>> ....
>>>>> // set the baseUrl PROBLEMATIC PART
>>>>> invocationParams.put("baseUrl", invocation.resolve(""));
>>>>>
>>>>> }
>>>>>
>>>>>
>>>>> But before starting making changes... this might need careful attention.
>>>>>
>>>>> Robby
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: Robby Pelssers [mailto:[email protected]]
>>>>> Sent: Tuesday, November 13, 2012 2:32 PM
>>>>> To: [email protected]
>>>>> Subject: RE: XInclude in sitemap.xmap
>>>>>
>>>>> I'm debugging your issue and so far I'm pretty bedazzled about what the
>>>>> hell is going on:
>>>>>
>>>>> <map:match equals="aggregation/xinclude-transformer">
>>>>> <map:generate src="aggregation/xinclude.xml" />
>>>>> <map:transform type="xinclude">
>>>>> <map:parameter name="cacheKey" value="{map:0}"/>
>>>>> <map:parameter name="baseUrl" value="file:///c:/tmp/"/>
>>>>> <map:parameter name="test" value="hello world"/>
>>>>> </map:transform>
>>>>> <map:serialize type="xml" />
>>>>> </map:match
>>>>>
>>>>> While debugging I see following Configuration -> Map<String,
>>>>> Object>
>>>>>
>>>>> baseUrl=file:/C:/workspaces/apache/cocoon/cocoon3/trunk/cocoon-sam
>>>>> pl
>>>>> e
>>>>> /./src/main/resources/COB-INF/
>>>>> cacheKey=aggregation/xinclude-transformer
>>>>> test=hello world
>>>>>
>>>>> Will keep you posted.. Maybe the baseUrl is somewhere overridden while
>>>>> setting up the pipeline? Anyone who can tell this?
>>>>>
>>>>> Robby
>>>>>
>>>>> -----Original Message-----
>>>>> From: Mansour Al Akeel [mailto:[email protected]]
>>>>> Sent: Tuesday, November 13, 2012 1:19 PM
>>>>> To: [email protected]
>>>>> Subject: Re: XInclude in sitemap.xmap
>>>>>
>>>>> I can not include all my files, but here's the relevant parts:
>>>>>
>>>>>
>>>>> <map:match pattern="article/{id}.xml">
>>>>> <map:generate
>>>>> src="{global:base.repo.path}/articles/{map:id}/index.xml" />
>>>>> <map:transform type="xinclude" >
>>>>> <map:parameter name="cacheKey" value="false"/>
>>>>> <map:parameter name="baseUrl"
>>>>> value="file://{global:base.repo.path}/articles/{map:id}/" />
>>>>> </map:transform>
>>>>> <!-- <map:transform src="sheets/html/xslthl.xsl " /> -->
>>>>> <map:serialize type="xml" />
>>>>> </map:match>
>>>>>
>>>>> In my xml file:
>>>>>
>>>>> <programlisting language="c">
>>>>> <xi:include href="hello.c" parse="text"
>>>>> xmlns:xi="http://www.w3.org/2001/XInclude"/>
>>>>> </programlisting>
>>>>>
>>>>>
>>>>> In the log I am getting this:
>>>>>
>>>>> 12:11:57.039 [btpool0-1] DEBUG
>>>>> o.a.cocoon.pipeline.AbstractPipeline
>>>>> - Going to link the component XMLGenerator(hashCode=1295514377
>>>>> internalGenerator=URLGenerator(hashCode=1212516680
>>>>> source=file:/home/mansour/workspace/pipeline
>>>>> s/repo/articles/example/index.xml)) with
>>>>> XIncludeTransformer(hashCode=373437306
>>>>> baseUrl=file:/home/mansour/workspace/pipelines/contents/./src/main/resources/COB-INF/).
>>>>> 12:11:57.039 [btpool0-1] DEBUG
>>>>> o.a.cocoon.pipeline.AbstractPipeline
>>>>> - Going to link the component
>>>>> XIncludeTransformer(hashCode=373437306
>>>>> baseUrl=file:/home/mansour/workspace/pipelines/contents/./src/main
>>>>> /r
>>>>> e
>>>>> sources/COB-INF/)
>>>>> wi
>>>>> th XMLSerializer(hashCode=1413585408).
>>>>> 12:11:57.039 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline -
>>>>> Creating CompoundCacheKey(hashCode=518365495 key=[]):
>>>>> 12:11:57.039 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline
>>>>> - ~ adding TimestampCacheKey(hashCode=1975202233
>>>>> url=file:/home/mansour/workspace/pipelines/repo/articles/example/i
>>>>> nd
>>>>> e
>>>>> x.xml
>>>>> timestamp=1352808707000 (2012-11-
>>>>> 13 12:11:47.0)) for component XMLGenerator(hashCode=1295514377
>>>>> internalGenerator=URLGenerator(hashCode=1212516680
>>>>> source=file:/home/mansour/workspace/pipelines/repo/articles/exampl
>>>>> e/
>>>>> i
>>>>> ndex.xml))
>>>>> 12:11:57.039 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline
>>>>> - ~ adding CachedCacheKey(hashCode=1855990413
>>>>> internalCacheKey=ObjectCacheKey(hashCode=1421714705 obj=false)
>>>>> cachedCacheKey=URLListCacheKey(hashCode=13584830
>>>>> 78 urls=[TimestampCacheKey(hashCode=334463211
>>>>> url=file:/home/mansour/workspace/pipelines/contents/src/main/resou
>>>>> rc e s/COB-INF/hello.c timestamp=0 (1970-01-01 00:00:00.0))])) for
>>>>> component
>>>>> XIncludeTransformer(hashCode=373437306
>>>>> baseUrl=file:/home/mansour/workspace/pipelines/contents/./src/main
>>>>> /r
>>>>> e
>>>>> sources/COB-INF/)
>>>>> 12:11:57.039 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline
>>>>> - ~ adding ParameterCacheKey(hashCode=1430898616
>>>>> parameters={encoding=UTF-8, method=xml}) for component
>>>>> XMLSerializer(hashCode=1413585408)
>>>>> 12:11:57.040 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline
>>>>> - Creating CompoundCacheKey(hashCode=518365495
>>>>> key=[TimestampCacheKey(hashCode=1975202233
>>>>> url=file:/home/mansour/workspace/pipelines/repo/articles/example/i
>>>>> nd ex.xml timestamp=1352808707000 (2012-11-13 12:11:47.0)),
>>>>> CachedCacheKey(hashCode=1855990413
>>>>> internalCacheKey=ObjectCacheKey(hashCode=1421714705 obj=false)
>>>>> cachedCacheKey=URLListCacheKey(hashCode=1358483078
>>>>> urls=[TimestampCache
>>>>> Key(hashCode=334463211
>>>>> url=file:/home/mansour/workspace/pipelines/contents/src/main/resou
>>>>> rc e s/COB-INF/hello.c timestamp=0 (1970-01-01 00:00:00.0))])),
>>>>> ParameterCacheKey(hashCode=1430898616 parameters={encoding=UTF-8,
>>>>> method=xm
>>>>> l})]) for pipeline CachingPipeline(hashCode=839414089
>>>>> components=[XMLGenerator(hashCode=1295514377
>>>>> internalGenerator=URLGenerator(hashCode=1212516680
>>>>> source=file:/home/mansour/workspace/pipelines/repo/articles/exampl
>>>>> e/ i ndex.xm l)), XIncludeTransformer(hashCode=373437306
>>>>> baseUrl=file:/home/mansour/workspace/pipelines/contents/./src/main
>>>>> /r
>>>>> e
>>>>> sources/COB-INF/),
>>>>> XMLSerializer(hashCode=1413585408)])
>>>>> 12:11:57.040 [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline
>>>>> - Used cache: SimpleCache(hashCode=1672230800) 12:11:57.040
>>>>> [btpool0-1] DEBUG o.a.cocoon.pipeline.CachingPipeline - No cache
>>>>> value available for CompoundCacheKey(hashCode=518365495
>>>>> key=[TimestampCacheKey(hashCode=1975202233
>>>>> url=file:/home/mansour/workspace/pipelines/repo/a
>>>>> rticles/example/index.xml timestamp=1352808707000 (2012-11-13
>>>>> 12:11:47.0)), CachedCacheKey(hashCode=1855990413
>>>>> internalCacheKey=ObjectCacheKey(hashCode=1421714705 obj=false)
>>>>> cachedCacheKey=URLListCacheKey(hashCode=1358483078 u
>>>>> rls=[TimestampCacheKey(hashCode=334463211
>>>>> url=file:/home/mansour/workspace/pipelines/contents/src/main/resou
>>>>> rc e s/COB-INF/hello.c timestamp=0 (1970-01-01 00:00:00.0))])),
>>>>> ParameterCacheKey(hashCode=1430898616 parameters={encodi ng=UTF-8,
>>>>> method=xml})]) 12:11:57.040 [btpool0-1] DEBUG
>>>>> o.a.cocoon.pipeline.AbstractPipeline - Invoking first component of
>>>>> CachingPipeline(hashCode=839414089
>>>>> components=[XMLGenerator(hashCode=1295514377
>>>>> internalGenerator=URLGenerator(hashCode=12125166
>>>>> 80
>>>>> source=file:/home/mansour/workspace/pipelines/repo/articles/exampl
>>>>> e/
>>>>> i
>>>>> ndex.xml)),
>>>>> XIncludeTransformer(hashCode=373437306
>>>>> baseUrl=file:/home/mansour/workspace/pipelines/contents/./src/main
>>>>> /r
>>>>> e
>>>>> sources/COB-INF/),
>>>>> XMLSerializer(hashCode=1413585408)])
>>>>> 12:11:57.040 [btpool0-1] DEBUG o.a.c.sax.component.XMLGenerator -
>>>>> Using the URL
>>>>> file:/home/mansour/workspace/pipelines/repo/articles/example/index
>>>>> .x
>>>>> m
>>>>> l
>>>>> to produce SAX events.
>>>>> 12:11:57.040 [btpool0-1] DEBUG
>>>>> o.a.c.jci.stores.MemoryResourceStore
>>>>> - reading resource
>>>>> com/sun/org/apache/xerces/internal/parsers/SAXParser.class
>>>>> 12:11:57.041 [btpool0-1] DEBUG
>>>>> o.a.c.jci.stores.MemoryResourceStore
>>>>> - reading resource
>>>>> com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConf
>>>>> ig
>>>>> u
>>>>> ration.class
>>>>> 12:11:57.041 [btpool0-1] DEBUG
>>>>> o.a.c.jci.stores.MemoryResourceStore
>>>>> - reading resource
>>>>> com/sun/org/apache/xerces/internal/impl/dv/dtd/DTDDVFactoryImpl.cl
>>>>> as
>>>>> s
>>>>> 12:11:57.041 [btpool0-1] DEBUG o.a.c.s.c.XIncludeTransformer -
>>>>> setDocumentLocator called null
>>>>> 12:11:57.042 [btpool0-1] DEBUG
>>>>> o.a.c.jci.stores.MemoryResourceStore
>>>>> - reading resource org/apache/xml/serializer/ToXMLStream.class
>>>>> 12:11:57.043 [btpool0-1] DEBUG o.a.c.s.c.XIncludeTransformer -
>>>>> Processing XInclude element: href=hello.c, parse=text,
>>>>> xpointer=null, encoding=null, accept=null, acceptLanguage=null
>>>>> 12:11:57.043 [btpool0-1] DEBUG o.a.c.s.c.XIncludeTransformer - Including
>>>>> source:
>>>>> file:/home/mansour/workspace/pipelines/contents/src/main/resources
>>>>> /C
>>>>> O
>>>>> B-INF/hello.c
>>>>> 12:11:57.043 [btpool0-1] DEBUG o.a.c.s.c.XIncludeTransformer -
>>>>> Parse type=text
>>>>> 12:11:57.045 [btpool0-1] ERROR o.a.c.s.c.XIncludeTransformer - Error
>>>>> including text:
>>>>> java.io.FileNotFoundException:
>>>>> /home/mansour/workspace/pipelines/contents/src/main/resources/COB-
>>>>> IN
>>>>> F
>>>>> /hello.c
>>>>> (No such file or directory)
>>>>> at java.io.FileInputStream.open(Native Method) ~[na:1.7.0]
>>>>> at
>>>>> java.io.FileInputStream.<init>(FileInputStream.java:138)
>>>>> ~[na:1.7.0]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Please note the logs where the baseUrl is in the COB-INF directory.
>>>>> The base url is set to the same the same directory of the article, but
>>>>> the logs shows it didn't change.
>>>>>
>>>>> Thank you
>>>>>
>>>>>
>>>>>
>>>>> On Tue, Nov 13, 2012 at 2:43 AM, Francesco Chicchiriccò
>>>>> <[email protected]> wrote:
>>>>>> On 13/11/2012 05:49, Mansour Al Akeel wrote:
>>>>>>> I am doing two project.
>>>>>>> A personal one with C3.0, and one for a product, and using C2.2.
>>>>>>> This issue is happening with C3.0.
>>>>>>>
>>>>>>> I didn't get a chance to test the files you sent me.
>>>>>> Ok, take a look there, then: using the XInclude transformer
>>>>>> should be pretty straightforward.
>>>>>>
>>>>>>> However, from the logs (which are really hard to read), it looks like I
>>>>>>> am having issues with the baseUrl.
>>>>>>> I looked into the source, and tried to set
>>>>>>> baseUrl="full-path-to-my-repo", but that didn't work either.
>>>>>> Again, please take a look at [1] and [2].
>>>>>>
>>>>>>> Would be nice to see a document describing the attributes to be set on
>>>>>>> each transformer.
>>>>>> XInclude transformer hasn't changed much since C2.1 [3] / C2.2 [4].
>>>>>>
>>>>>>> A clear error message can be a lot of help as well.
>>>>>> Definitely: in your case, though, I suspect that something really
>>>>>> "basic" is getting wrong.
>>>>>>
>>>>>> Please share your files if you'd like to get more in-depth help.
>>>>>>
>>>>>> Regards.
>>>>>>
>>>>>>> On Mon, Nov 12, 2012 at 2:23 AM, Francesco Chicchiriccň
>>>>>>> <[email protected]> wrote:
>>>>>>>> On 12/11/2012 07:59, Mansour Al Akeel wrote:
>>>>>>>>> Here's what I am doing:
>>>>>>>>>
>>>>>>>>> <map:match pattern="article/{id}">
>>>>>>>>> <map:generate
>>>>>>>>> src="{global:base.repo.path}/articles/{map:id}/index.xml" />
>>>>>>>>> <map:transform type="xinclude" />
>>>>>>>>> <map:serialize type="xhtml" />
>>>>>>>>>
>>>>>>>>> and this is error:
>>>>>>>>> [...]
>>>>>>>> Hi,
>>>>>>>> did you take a look at sample sitemap.xmap [1] (around line
>>>>>>>> 387) and specifically xinclude.xml [2]?
>>>>>>>>
>>>>>>>> BTW: which version are you running? From the reported
>>>>>>>> stacktrace I understand C3, but some of your earlier questions were
>>>>>>>> referring to C2.2....
>>>>>>>>
>>>>>>>> Regards.
>>>>>>>>
>>>>>>>> [1]
>>>>>>>> https://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-sa
>>>>>>>> mp l e/ src/main/resources/COB-INF/sitemap.xmap
>>>>>>>> [2]
>>>>>>>> https://svn.apache.org/repos/asf/cocoon/cocoon3/trunk/cocoon-sa
>>>>>>>> mp l e/ src/main/resources/COB-INF/aggregation/xinclude.xml
>>>>>> [3]
>>>>>> http://cocoon.apache.org/2.1/userdocs/xinclude-transformer.html
>>>>>> [4]
>>>>>> http://cocoon.apache.org/2.2/core-modules/core/2.2/985_1_1.html
>>>>
>>>> --
>>>> Francesco Chicchiriccò
>>>>
>>>> ASF Member, Apache Cocoon PMC and Apache Syncope PPMC Member
>>>> http://people.apache.org/~ilgrosso/
>>>>
>>>>
>>>> -------------------------------------------------------------------
>>>> -- 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]
>>
>>
>> B KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKCB
>> [ X ܚX K K[XZ[
>> \ \ ][ X ܚX P ۋ \ X K ܙ B ܈ Y ] [ۘ[ [X[ K[XZ[
>> \ \ Z [ ۋ \ X K ܙ B
>>
>> ---------------------------------------------------------------------
>> 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]