cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Leszek Gawron <lgaw...@mobilebox.pl>
Subject Re: reading settings in cocoon.xconf
Date Mon, 04 Sep 2006 11:36:12 GMT
Carsten Ziegeler wrote:
> Leszek Gawron wrote
> 
>> As long as it is configured automatically so the only thing that user 
>> does is:
>>
>> mvn clean compile cocoon:deploy jetty:run
>>
> I'm not that familiar with all aspects of the cocoon:deploy plugin, but
> I thought that this one is deploying all files into the necessary locations?
Not exactly. This is only one mode of operation when you work on 
cocoon-webapp archetype.

If you invoke it for any project that is not war packaged then it is 
assumed you are locally developing your cocoon block. Your main 
sitemap.xmap, cocoon.xconf, web.xml and bunch of other core files get 
generated:

                                  --- sitemap.xmap ---

> <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
> 
>   <map:components>
>        
>            
>             <map:classloader factory-role="org.apache.cocoon.classloader.ClassLoaderFactory/reloading">
>               <class-dir src="file:/c:/dev/projects/donnelley/donnelley-admin/target/classes/"/>
>             </map:classloader>    
>            
>   </map:components>
> 
>   <map:pipelines>
>     <map:pipeline>
>       <map:match pattern="">
>         <map:redirect-to uri="blocks/donnelley-admin/"/>
>       </map:match>
>       <!-- resources of block jars -->
>       <map:match pattern="_cocoon/resources/*/**">
>         <map:read src="resource://org/apache/cocoon/{1}/resources/{2}"/>
>       </map:match>      
>       <!-- mount all development blocks -->
>          
>         
>                 <map:match pattern="blocks/donnelley-block-common/**">
>                   <map:mount uri-prefix="blocks/donnelley-block-common" src="file:/c:/dev/projects/donnelley/donnelley-admin/../donnelley-block-common/src/main/resources/COB-INF/"/>
>                 </map:match>
>                
>         
>                 <map:match pattern="blocks/donnelley-admin/**">
>                   <map:mount uri-prefix="blocks/donnelley-admin" src="file:/c:/dev/projects/donnelley/donnelley-admin/src/main/resources/COB-INF/"/>
>                 </map:match>
>             
>       <!-- mount all deployed blocks -->      
>       <map:match pattern="*/**">
>         <map:mount src="{1}/" uri-prefix="{1}"/>
>       </map:match>
>     </map:pipeline>
>     
>   </map:pipelines>
> </map:sitemap>

features: - local classes loaded via reloading classloader
           - COB-INF sources mounted directly from src/ directory
           - COB-INF from other modules (if specified) also mounted from
             source

                   --- web.xml ---
generated from scratch, all cocoon blocks contribute patches from 
META-INF/xpatch/*.xweb

cocoon.xconf:

> <cocoon version="2.2">
> 
>   <!--+
>       | Include the core roles definitions. This is for the sake of clarity,
>       | as they are implicitely loaded at startup, but we may want to remove
>       | this implicit behaviour in the future now that we have the include
>       | mechanism. 
>       +-->
>   <include src="resource://org/apache/cocoon/cocoon.roles"/>
> 
>   <!--+
>       | Include all configuration files ending with ".xconf" 
>       | from the xconf directory.
>       +-->
>   <include dir="context://WEB-INF/cocoon/xconf" pattern="*.xconf"/>
> 
>   <!--+
>       | Include all configuration files ending with ".xmap" 
>       | from the sitemap-additions directory.
>       +-->
>   <include dir="context://WEB-INF/cocoon/sitemap-additions" pattern="*.xmap"/>
>   
>   <!--+
>       | Include Spring beans definition files ending with ".xml" from
>       | the spring directory.
>       +-->
>   <include-beans dir="context://WEB-INF/cocoon/spring" pattern="*.xml"/>
> 
>       <include-beans dir="file:/c:/dev/projects/donnelley/donnelley-admin/src/main/resources/META-INF/spring/"
pattern="*.xml"/>
>       
>       <include dir="file:/c:/dev/projects/donnelley/donnelley-admin/src/main/resources/META-INF/legacy/xconf/"
pattern="*.xconf"/>
>       
>       <include dir="file:/c:/dev/projects/donnelley/donnelley-admin/src/main/resources/META-INF/legacy/sitemap-additions/"
pattern="*.xmap"/>
>     
> 
> </cocoon>

features:
- local spring contexts, avalon context and sitemap additions mounted 
directly from source directory

The main goal is to provide everything from source folder.

The blocks consists of:
- COB-INF resources (covered with mount in sitemap)
- java classes (loaded on sitemap level with reloading classloader, now 
gets me thinking it will break if block supplies some core spring beans)
- avalon contexts (covered by include in cocoon.xconf)
- spring contexts (covered by include in cocoon.xconf)
- sitemap additions (covered by include in cocoon.xconf)
- properties
   - those in src/main/resources/COB-INF/config/properties/ covered by 
automatic loading in block sitemap
   - those in src/main/resources/META-INF/properties are NOT COVERED




-- 
Leszek Gawron, IT Manager                          MobileBox sp. z o.o.
+48 (61) 855 06 67                              http://www.mobilebox.pl
mobile: +48 (501) 720 812                       fax: +48 (61) 853 29 65

Mime
View raw message