Maven 2.x and 3.x Site Plugin

Generated site page for child module inherits items from parent site all the time

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Duplicate
  • Affects Version/s: 2.0-beta-7
  • Fix Version/s: None
  • Component/s: inheritance
  • Labels:
    None
  • Environment:
    Windows XP, Solaris 5.9
  • Number of attachments :
    0

Description

I have a Maven project that consists of a parent project and two child projects. In the parent project, it contains a site.xml (in src/site) that looks like

<project>
    <version position="right"/>
    <body>
        <menu ref="parent" inherit="top"/>
        <menu name="Development Home">
            <item name="Developer Page" href="developerItems.html"/>
            <item name="Outstanding Items" href="outstandingItems.html"/>
        </menu>
        <menu name="Development Streams">
            <item name="trunk" href="http://wallaby:15000/webgui-trunk"/>
        </menu>
        <menu ref="modules"/>
        <menu ref="reports"/>
    </body>
</project>

The child projects do not have any site.xml files. When "mvn site" is run, the pages for the parent project are fine and the links all work. When I display the pages for the child modules, however, they too have menu entries for "Development Home" and "Development Streams". If I click on the "Home" menus, they fail (as would be expected).

From the doco, I assumed that menu's by default aren't inherited. If I explictly declare inherit="none" for the "Development Home" and "Development Streams" menu items, nothing changes (they are still displayed in the child project's pages. If I attempt to define site.xml files for the child projects, nothing changes. I can't set up the site descriptors to prevent those Menu items from appearing in the child project's site documentation.

Issue Links

Activity

Hide
Anne Gerodolle added a comment -

I observe almost the same behaviour :
If no site.xml are defined in the child module, menus are incorrectly inherited.
However, is a site.xml is defined, the behaviour is now correct (e.g. in the provided example, only the "parent" menu is inherited.

thus, a simple solution is to provide an "empty" site.xml in children projects. (I tried with a site.xml containing nothing between <body> and </body>

Show
Anne Gerodolle added a comment - I observe almost the same behaviour : If no site.xml are defined in the child module, menus are incorrectly inherited. However, is a site.xml is defined, the behaviour is now correct (e.g. in the provided example, only the "parent" menu is inherited. thus, a simple solution is to provide an "empty" site.xml in children projects. (I tried with a site.xml containing nothing between <body> and </body>
Hide
Ed Hillmann added a comment -

Yes, that worked. When I update my child projects to include a src/site/site.xml that looks like this

<project>
    <version position="right"/>
    <body>
        <menu ref="reports"/>
    </body>
</project>

then it works the way I want it. This does the same thing as your suggestion of an empty <body> block, except that it generates the reports (which is good, as I would like to have those).

So, it seems that once actual named menus are created (<menu name="something"/>), the inheritance gets mucked up.

However, this is doing as I want, so I'm happy to reduce the priority of this issue.

Show
Ed Hillmann added a comment - Yes, that worked. When I update my child projects to include a src/site/site.xml that looks like this
<project>
    <version position="right"/>
    <body>
        <menu ref="reports"/>
    </body>
</project>
then it works the way I want it. This does the same thing as your suggestion of an empty <body> block, except that it generates the reports (which is good, as I would like to have those). So, it seems that once actual named menus are created (<menu name="something"/>), the inheritance gets mucked up. However, this is doing as I want, so I'm happy to reduce the priority of this issue.
Hide
Antonio Petrelli added a comment -

Upgrading to 2.0-beta-8-SNAPSHOT works for me, in Tiles project:
http://tiles.apache.org/

Show
Antonio Petrelli added a comment - Upgrading to 2.0-beta-8-SNAPSHOT works for me, in Tiles project: http://tiles.apache.org/

People

Vote (5)
Watch (7)

Dates

  • Created:
    Updated:
    Resolved: