cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mansour Al Akeel <mansour.alak...@gmail.com>
Subject Re: sharing properties in blocks
Date Tue, 19 May 2009 01:07:25 GMT
Ok, I found what I was looking for. I can override the properties in the 
contents block, and they will be available to the navigation block. The 
problem now is, I need (for testing and dev) the absolute path to the 
current cocoon block context (ie, the absolute location of the sitemap).
I tried using different protocols but none worked for me. I tried (in my 
properties file) :

site.root.directory=context:/

but it returns the absolute path of the webapp directory and not COB-INF.

Other protocols like cocoon:/ and cocoon:// gave exceptions :

java.lang.StackOverflowError
         at org.apache.regexp.RE.matchNodes(Unknown Source)
         at org.apache.regexp.RE.matchNodes(Unknown Source)
         at org.apache.regexp.RE.matchNodes(Unknown Source)
...


Is there a way when developing with maven, to obtain the absolute path 
of the current block context, so that I can share it with other blocks ?

I know this can be taken care later on when putting everything in a war, 
and use either context:/ or file:// but as a default value I need to set 
this up this way.

Any idea ?


Mansour Al Akeel wrote:
> Hello all:
> I have this senario where I need to override properties in more than one 
> of the blocks when they are used from a top level one. For example, I 
> need the site navigation block to construct a navigation from one 
> directory. In another block, the contents will be server from the same 
> directory. In the site navigation block I have this:
> 
> <map:generate type="directory" src="${site.contents.directory}">
>             <map:parameter name="depth" value="3"/>
>  </map:generate>
> 
> 
> Then in define this value in the cocoon.properties for the 
> contents-block using the relative path:
> 
> site.contents.directory=contents
> 
> Now, the problem is, this directory doesn't exist in the navigation 
> block. I considered using one of the InputModules varaibles that refers 
> to the deployment path (not sure which one yet), but again this won't 
> help as I want to be able to change this variable to an absolute path on 
> the filesystem.
> 
> I am using aggregation to combine results from multiple blocks.
> 
> Is there's a clean way to achieve this?
> 
> Thank you.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Mime
View raw message