cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Klimetschek <alexander.klimetsc...@mindquarry.com>
Subject Configuring BlockServlets via properties and sitemap reloading for blocks
Date Mon, 16 Oct 2006 09:33:54 GMT
Hi Daniel,

I am playing around with the new blocks protocol and the BlockServlets. 
I have two blocks A and B, B "inherits" from A and then there is a 
webapp that uses both blocks. The webapp has the DispatcherServlet 
configured in the web.xml and the mountPath for the two blocks is 
defined in the spring-bean config XML file. Now I face two problems:

1) I'd like to configure the mountPath to the blocks in the webapp, 
because the blocks itself are generic; I have tried it with a properties 
file manually placed in WEB-INF/cocoon/properties that sets the mountPath:

com.domain.package.blockA.mountPath=foo

But this does not work. How can I override the setting in the bean 
config XML with a property?

2) The nice development feature of sitemap reloading does not work when 
working on blocks, because you cannot deploy a block with it's own 
web.xml (that has the necessary DispatcherServlet). I use the webapp 
which will use the packaged jars from A and B.

The hurdles here are:
a) the cocoon deployer will overwrite the web.xml with no 
DispatcherServlet configured
b) the blockContextURL should point to the source-folder (like in the 
sitemap generated by the deployer) so that reloading works on the 
developer's working directory
c) that blockContextURL must be overwritten by the deployer via a 
property (problem like in 1)

I'd imagine a deployer that recognizes the -Dorg.apache.cocoon.mode=dev 
and then configures the webapp to work as above. I could do some work on 
the deployer plugin if those points are resolved.

Another question then arises for the final wiring of blocks: typically I 
have a root sitemap and mount my different sub-sitemaps there. But when 
each sub-sitemap is now served via a BlockServlet I must have the 
DispatcherServlet listening on "/" so that I need a separate 
BlockServlet serving the root (like /index.html). It would be very cool 
if one could mount a BlockServlet directly inside the root sitemap.

Alex

-- 
Alexander Klimetschek
http://www.mindquarry.com



Mime
View raw message