maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From St├ęphane Toussaint (JIRA) <j...@codehaus.org>
Subject [jira] Commented: (MSITE-358) site.xml urls are not always correct
Date Wed, 15 Apr 2009 10:39:14 GMT

    [ http://jira.codehaus.org/browse/MSITE-358?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=173033#action_173033
] 

St├ęphane Toussaint commented on MSITE-358:
------------------------------------------

In a multi-module project environment I think we can expect that site deployment will :
- Use the last inherited skin for the current module (That's the way it works right now)
- Only retrieve skins artifacts (css, images) for the parent or for any module which override
the skin (currently all deployed module will receive the skin artifacts)
- Path to the skin artifacts will be relative from the parent (almost what's it's done now)
or the overriding module

As example :

project/pom.xml
project/src/site/site.xml

project/module1/pom.xml

project/module2/pom.xml
project/module2/src/site/site.xml

The project base site.xml will be applied to all modules (expect whose who override it)
{code:xml}
<project>
    <skin>
        <groupId>skins</groupId>
        <artifactId>default-skin</artifactId>
    </skin>
    <bannerLeft>
        <name>Default Banner</name>
        <src>images/logo-default.jpg</src>
        <href>...</href>
    </bannerLeft>
    <body>
        <menu ref="modules"/>
        <menu ref="reports"/>
    </body>
</project>
{code}

The project/index.html page will display the banner with an image located in project/images//logo-default.jpg

The project/module1/index.html page will display the very same banner with an image located
in (../../)project/images//logo-default.jpg. The (../../) path will get out of the modules
deployment location, so it doesn't matter if the module is part of the parent (as this example)
or near it.

Finally if the module2 site.xml override the skin 
{code:xml}
<project>
    <skin>
        <groupId>skins</groupId>
        <artifactId>default-skin-2</artifactId>
    </skin>
    ...
</project>
{code}

The project/module2/index.html page will display the banner with an image located in project/module2/images/logo-default.jpg.
(which is not necessary the same as the previous one).



> site.xml urls are not always correct
> ------------------------------------
>
>                 Key: MSITE-358
>                 URL: http://jira.codehaus.org/browse/MSITE-358
>             Project: Maven 2.x Site Plugin
>          Issue Type: Bug
>    Affects Versions: 2.0-beta-6
>            Reporter: Brian Fox
>            Priority: Blocker
>             Fix For: 2.1
>
>
> This is so completely broken that it must be fixed before another release occurs. 
> The maven-parent site.xml defines some images as:
> {noformat}
>   <bannerLeft>
>     <name>${project.name}</name>
>     <src>http://maven.apache.org/images/apache-maven-project-2.png</src>
>     <href>http://maven.apache.org/</href>
>   </bannerLeft>
>   <bannerRight>
>     <src>http://maven.apache.org/images/maven-logo-2.gif</src>
>   </bannerRight>
> {noformat}
> The site plugin somewhere along the line replaces these urls with ../../ repeated based
on how far down the inheritence tree you are from maven-parent. This means you can't stage
or deploy a site to a different location than the maven-parent because all urls will point
back to maven-parent's /images. Worse, every module has its own copy of the css and images
so there's no reason for it to depend on the parent at all.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

Mime
View raw message