Dashboard plugin with multiproject independent navigation

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Dashboard plugin with multiproject independent navigation

Wim Deblauwe
Hi,

the Dashboard plugin seems to assume that the
maven.multiproject.navigation property is set to 'aggregate', becuase
the links that are generated are like this:

    <j:if test="${shallDisplay == 'true'}">
      <tr>
        <x:set var="projecturl1" select="string(@artifactId)"/>
        <j:set var="projecturl"
value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
        <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
        <jsl:applyTemplates select="aggregator"/>
      </tr>
    </j:if>

Notice the use of maven.multiproject.aggregateDir. But when
'independent' navigation is used the plugin should look at the
'pom.url' property.

Is this a bug or am I missing something?

This would probably be a better solution (untested):


    <j:if test="${shallDisplay == 'true'}">
      <tr>
        <!-- url not defined in POM -->
        <j:if test="${empty(pom.url)}">
        <x:set var="projecturl1" select="string(@artifactId)"/>
        <j:set var="projecturl"
value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
        <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
        </j:if>

        <!-- url defined in POM -->
        <j:if test="${!empty(pom.url)}">
            <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
         </j:if>
        <jsl:applyTemplates select="aggregator"/>
      </tr>
    </j:if>

regards,

Wim

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: Dashboard plugin with multiproject independent navigation

Vincent Massol
Hi Wim,

Yes, this is a known limitation (I've only used aggregate multiprojects and
thus have only implemented this one...).

If you can submit a patch with a test (through JIRA) I could apply it.

Thanks
-Vincent

> -----Original Message-----
> From: Wim Deblauwe [mailto:[hidden email]]
> Sent: jeudi 12 mai 2005 11:08
> To: Maven Users List
> Subject: Dashboard plugin with multiproject independent navigation
>
> Hi,
>
> the Dashboard plugin seems to assume that the
> maven.multiproject.navigation property is set to 'aggregate', becuase
> the links that are generated are like this:
>
>     <j:if test="${shallDisplay == 'true'}">
>       <tr>
>         <x:set var="projecturl1" select="string(@artifactId)"/>
>         <j:set var="projecturl"
> value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>         <jsl:applyTemplates select="aggregator"/>
>       </tr>
>     </j:if>
>
> Notice the use of maven.multiproject.aggregateDir. But when
> 'independent' navigation is used the plugin should look at the
> 'pom.url' property.
>
> Is this a bug or am I missing something?
>
> This would probably be a better solution (untested):
>
>
>     <j:if test="${shallDisplay == 'true'}">
>       <tr>
>         <!-- url not defined in POM -->
>         <j:if test="${empty(pom.url)}">
>         <x:set var="projecturl1" select="string(@artifactId)"/>
>         <j:set var="projecturl"
> value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>         </j:if>
>
>         <!-- url defined in POM -->
>         <j:if test="${!empty(pom.url)}">
>             <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
>          </j:if>
>         <jsl:applyTemplates select="aggregator"/>
>       </tr>
>     </j:if>
>
> regards,
>
> Wim
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]





---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Dashboard plugin with multiproject independent navigation

Wim Deblauwe
In reply to this post by Wim Deblauwe
Just tried it but it does not work.

It uses the pom.url of the master project, not of the subprojects. Any
idea on how I can access those?

regards,

Wim

On 5/12/05, Vincent Massol <[hidden email]> wrote:

> Hi Wim,
>
> Yes, this is a known limitation (I've only used aggregate multiprojects and
> thus have only implemented this one...).
>
> If you can submit a patch with a test (through JIRA) I could apply it.
>
> Thanks
> -Vincent
>
> > -----Original Message-----
> > From: Wim Deblauwe [mailto:[hidden email]]
> > Sent: jeudi 12 mai 2005 11:08
> > To: Maven Users List
> > Subject: Dashboard plugin with multiproject independent navigation
> >
> > Hi,
> >
> > the Dashboard plugin seems to assume that the
> > maven.multiproject.navigation property is set to 'aggregate', becuase
> > the links that are generated are like this:
> >
> >     <j:if test="${shallDisplay == 'true'}">
> >       <tr>
> >         <x:set var="projecturl1" select="string(@artifactId)"/>
> >         <j:set var="projecturl"
> > value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
> >         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
> >         <jsl:applyTemplates select="aggregator"/>
> >       </tr>
> >     </j:if>
> >
> > Notice the use of maven.multiproject.aggregateDir. But when
> > 'independent' navigation is used the plugin should look at the
> > 'pom.url' property.
> >
> > Is this a bug or am I missing something?
> >
> > This would probably be a better solution (untested):
> >
> >
> >     <j:if test="${shallDisplay == 'true'}">
> >       <tr>
> >         <!-- url not defined in POM -->
> >         <j:if test="${empty(pom.url)}">
> >         <x:set var="projecturl1" select="string(@artifactId)"/>
> >         <j:set var="projecturl"
> > value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
> >         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
> >         </j:if>
> >
> >         <!-- url defined in POM -->
> >         <j:if test="${!empty(pom.url)}">
> >             <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
> >          </j:if>
> >         <jsl:applyTemplates select="aggregator"/>
> >       </tr>
> >     </j:if>
> >
> > regards,
> >
> > Wim
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [hidden email]
> > For additional commands, e-mail: [hidden email]
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Dashboard plugin with multiproject independent navigation

Wim Deblauwe
Hi,

found how to do it, but I don't know how to create a patch and I don't
have CVS. Can somebody create a patch out of this?

In dashboard.jsl, in <jsl:template match="project">:

   <j:if test="${shallDisplay == 'true'}">
     <tr>
       <!-- url not defined in POM -->
       <x:set var="pomurl" select="string(@url)"/>
       <j:if test="${empty(pomurl)}">
         <x:set var="projecturl1" select="string(@artifactId)"/>
         <j:set var="projecturl"
value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
       </j:if>

       <!-- url defined in POM -->
       <j:if test="${!empty(pomurl)}">
           <td><a href="${pomurl}"><x:expr select="@name"/></a></td>
        </j:if>
       <jsl:applyTemplates select="aggregator"/>
     </tr>
   </j:if>

In plugin.jelly, under the dashboard:aggregate goal:

            <x:element name="project">
              <x:attribute name="name">${reactorProject.name}</x:attribute>
              <x:attribute
name="artifactId">${reactorProject.artifactId}</x:attribute>
              <!-- start of my added code -->
              <j:if test="${!empty(reactorProject.url)}">
              <x:attribute name="url">${reactorProject.url}</x:attribute>
              </j:if>
               <!-- end of my added code -->
              ... rest of code
           </x:element>

Basically, this is what happens:

The pom.url is added to the dashboard-data.xml file. This url is then
retrieved in the jsl file via @url. If this @url is not empty, the
value of it is used to create the link.

regards,

Wim

On 5/12/05, Wim Deblauwe <[hidden email]> wrote:

> Just tried it but it does not work.
>
> It uses the pom.url of the master project, not of the subprojects. Any
> idea on how I can access those?
>
> regards,
>
> Wim
>
> On 5/12/05, Vincent Massol <[hidden email]> wrote:
> > Hi Wim,
> >
> > Yes, this is a known limitation (I've only used aggregate multiprojects and
> > thus have only implemented this one...).
> >
> > If you can submit a patch with a test (through JIRA) I could apply it.
> >
> > Thanks
> > -Vincent
> >
> > > -----Original Message-----
> > > From: Wim Deblauwe [mailto:[hidden email]]
> > > Sent: jeudi 12 mai 2005 11:08
> > > To: Maven Users List
> > > Subject: Dashboard plugin with multiproject independent navigation
> > >
> > > Hi,
> > >
> > > the Dashboard plugin seems to assume that the
> > > maven.multiproject.navigation property is set to 'aggregate', becuase
> > > the links that are generated are like this:
> > >
> > >     <j:if test="${shallDisplay == 'true'}">
> > >       <tr>
> > >         <x:set var="projecturl1" select="string(@artifactId)"/>
> > >         <j:set var="projecturl"
> > > value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
> > >         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
> > >         <jsl:applyTemplates select="aggregator"/>
> > >       </tr>
> > >     </j:if>
> > >
> > > Notice the use of maven.multiproject.aggregateDir. But when
> > > 'independent' navigation is used the plugin should look at the
> > > 'pom.url' property.
> > >
> > > Is this a bug or am I missing something?
> > >
> > > This would probably be a better solution (untested):
> > >
> > >
> > >     <j:if test="${shallDisplay == 'true'}">
> > >       <tr>
> > >         <!-- url not defined in POM -->
> > >         <j:if test="${empty(pom.url)}">
> > >         <x:set var="projecturl1" select="string(@artifactId)"/>
> > >         <j:set var="projecturl"
> > > value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
> > >         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
> > >         </j:if>
> > >
> > >         <!-- url defined in POM -->
> > >         <j:if test="${!empty(pom.url)}">
> > >             <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
> > >          </j:if>
> > >         <jsl:applyTemplates select="aggregator"/>
> > >       </tr>
> > >     </j:if>
> > >
> > > regards,
> > >
> > > Wim
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [hidden email]
> > > For additional commands, e-mail: [hidden email]
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [hidden email]
> > For additional commands, e-mail: [hidden email]
> >
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Dashboard plugin with multiproject independent navigation

Wim Deblauwe
I added all information in JIRA: http://jira.codehaus.org/browse/MPDASHBOARD-24

On 5/12/05, Wim Deblauwe <[hidden email]> wrote:

> Hi,
>
> found how to do it, but I don't know how to create a patch and I don't
> have CVS. Can somebody create a patch out of this?
>
> In dashboard.jsl, in <jsl:template match="project">:
>
>    <j:if test="${shallDisplay == 'true'}">
>      <tr>
>        <!-- url not defined in POM -->
>        <x:set var="pomurl" select="string(@url)"/>
>        <j:if test="${empty(pomurl)}">
>          <x:set var="projecturl1" select="string(@artifactId)"/>
>          <j:set var="projecturl"
> value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>          <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>        </j:if>
>
>        <!-- url defined in POM -->
>        <j:if test="${!empty(pomurl)}">
>            <td><a href="${pomurl}"><x:expr select="@name"/></a></td>
>         </j:if>
>        <jsl:applyTemplates select="aggregator"/>
>      </tr>
>    </j:if>
>
> In plugin.jelly, under the dashboard:aggregate goal:
>
>             <x:element name="project">
>               <x:attribute name="name">${reactorProject.name}</x:attribute>
>               <x:attribute
> name="artifactId">${reactorProject.artifactId}</x:attribute>
>               <!-- start of my added code -->
>               <j:if test="${!empty(reactorProject.url)}">
>                 <x:attribute name="url">${reactorProject.url}</x:attribute>
>               </j:if>
>                <!-- end of my added code -->
>               ... rest of code
>            </x:element>
>
> Basically, this is what happens:
>
> The pom.url is added to the dashboard-data.xml file. This url is then
> retrieved in the jsl file via @url. If this @url is not empty, the
> value of it is used to create the link.
>
> regards,
>
> Wim
>
> On 5/12/05, Wim Deblauwe <[hidden email]> wrote:
> > Just tried it but it does not work.
> >
> > It uses the pom.url of the master project, not of the subprojects. Any
> > idea on how I can access those?
> >
> > regards,
> >
> > Wim
> >
> > On 5/12/05, Vincent Massol <[hidden email]> wrote:
> > > Hi Wim,
> > >
> > > Yes, this is a known limitation (I've only used aggregate multiprojects and
> > > thus have only implemented this one...).
> > >
> > > If you can submit a patch with a test (through JIRA) I could apply it.
> > >
> > > Thanks
> > > -Vincent
> > >
> > > > -----Original Message-----
> > > > From: Wim Deblauwe [mailto:[hidden email]]
> > > > Sent: jeudi 12 mai 2005 11:08
> > > > To: Maven Users List
> > > > Subject: Dashboard plugin with multiproject independent navigation
> > > >
> > > > Hi,
> > > >
> > > > the Dashboard plugin seems to assume that the
> > > > maven.multiproject.navigation property is set to 'aggregate', becuase
> > > > the links that are generated are like this:
> > > >
> > > >     <j:if test="${shallDisplay == 'true'}">
> > > >       <tr>
> > > >         <x:set var="projecturl1" select="string(@artifactId)"/>
> > > >         <j:set var="projecturl"
> > > > value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
> > > >         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
> > > >         <jsl:applyTemplates select="aggregator"/>
> > > >       </tr>
> > > >     </j:if>
> > > >
> > > > Notice the use of maven.multiproject.aggregateDir. But when
> > > > 'independent' navigation is used the plugin should look at the
> > > > 'pom.url' property.
> > > >
> > > > Is this a bug or am I missing something?
> > > >
> > > > This would probably be a better solution (untested):
> > > >
> > > >
> > > >     <j:if test="${shallDisplay == 'true'}">
> > > >       <tr>
> > > >         <!-- url not defined in POM -->
> > > >         <j:if test="${empty(pom.url)}">
> > > >         <x:set var="projecturl1" select="string(@artifactId)"/>
> > > >         <j:set var="projecturl"
> > > > value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
> > > >         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
> > > >         </j:if>
> > > >
> > > >         <!-- url defined in POM -->
> > > >         <j:if test="${!empty(pom.url)}">
> > > >             <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
> > > >          </j:if>
> > > >         <jsl:applyTemplates select="aggregator"/>
> > > >       </tr>
> > > >     </j:if>
> > > >
> > > > regards,
> > > >
> > > > Wim
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [hidden email]
> > > > For additional commands, e-mail: [hidden email]
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [hidden email]
> > > For additional commands, e-mail: [hidden email]
> > >
> > >
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Including multiproject:site output doc in a distribution

Michael Niemaz
Hi all,
    I am playing with the reactor tag and it works great. All I do is
generate a zip file containing my sub-projects war files by postgoaling
the dist:prepare-bin-filesystem goal.

Now, next step is to replace the 'single' project generated doc inserted
into the distribution package with the one that is generated through
multiproject:site goal. I tried different methods but in vain.

Any ideas?

thanx,

--mike

Wim Deblauwe wrote:

>I added all information in JIRA: http://jira.codehaus.org/browse/MPDASHBOARD-24
>
>On 5/12/05, Wim Deblauwe <[hidden email]> wrote:
>  
>
>>Hi,
>>
>>found how to do it, but I don't know how to create a patch and I don't
>>have CVS. Can somebody create a patch out of this?
>>
>>In dashboard.jsl, in <jsl:template match="project">:
>>
>>   <j:if test="${shallDisplay == 'true'}">
>>     <tr>
>>       <!-- url not defined in POM -->
>>       <x:set var="pomurl" select="string(@url)"/>
>>       <j:if test="${empty(pomurl)}">
>>         <x:set var="projecturl1" select="string(@artifactId)"/>
>>         <j:set var="projecturl"
>>value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>>         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>>       </j:if>
>>
>>       <!-- url defined in POM -->
>>       <j:if test="${!empty(pomurl)}">
>>           <td><a href="${pomurl}"><x:expr select="@name"/></a></td>
>>        </j:if>
>>       <jsl:applyTemplates select="aggregator"/>
>>     </tr>
>>   </j:if>
>>
>>In plugin.jelly, under the dashboard:aggregate goal:
>>
>>            <x:element name="project">
>>              <x:attribute name="name">${reactorProject.name}</x:attribute>
>>              <x:attribute
>>name="artifactId">${reactorProject.artifactId}</x:attribute>
>>              <!-- start of my added code -->
>>              <j:if test="${!empty(reactorProject.url)}">
>>                <x:attribute name="url">${reactorProject.url}</x:attribute>
>>              </j:if>
>>               <!-- end of my added code -->
>>              ... rest of code
>>           </x:element>
>>
>>Basically, this is what happens:
>>
>>The pom.url is added to the dashboard-data.xml file. This url is then
>>retrieved in the jsl file via @url. If this @url is not empty, the
>>value of it is used to create the link.
>>
>>regards,
>>
>>Wim
>>
>>On 5/12/05, Wim Deblauwe <[hidden email]> wrote:
>>    
>>
>>>Just tried it but it does not work.
>>>
>>>It uses the pom.url of the master project, not of the subprojects. Any
>>>idea on how I can access those?
>>>
>>>regards,
>>>
>>>Wim
>>>
>>>On 5/12/05, Vincent Massol <[hidden email]> wrote:
>>>      
>>>
>>>>Hi Wim,
>>>>
>>>>Yes, this is a known limitation (I've only used aggregate multiprojects and
>>>>thus have only implemented this one...).
>>>>
>>>>If you can submit a patch with a test (through JIRA) I could apply it.
>>>>
>>>>Thanks
>>>>-Vincent
>>>>
>>>>        
>>>>
>>>>>-----Original Message-----
>>>>>From: Wim Deblauwe [mailto:[hidden email]]
>>>>>Sent: jeudi 12 mai 2005 11:08
>>>>>To: Maven Users List
>>>>>Subject: Dashboard plugin with multiproject independent navigation
>>>>>
>>>>>Hi,
>>>>>
>>>>>the Dashboard plugin seems to assume that the
>>>>>maven.multiproject.navigation property is set to 'aggregate', becuase
>>>>>the links that are generated are like this:
>>>>>
>>>>>    <j:if test="${shallDisplay == 'true'}">
>>>>>      <tr>
>>>>>        <x:set var="projecturl1" select="string(@artifactId)"/>
>>>>>        <j:set var="projecturl"
>>>>>value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>>>>>        <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>>>>>        <jsl:applyTemplates select="aggregator"/>
>>>>>      </tr>
>>>>>    </j:if>
>>>>>
>>>>>Notice the use of maven.multiproject.aggregateDir. But when
>>>>>'independent' navigation is used the plugin should look at the
>>>>>'pom.url' property.
>>>>>
>>>>>Is this a bug or am I missing something?
>>>>>
>>>>>This would probably be a better solution (untested):
>>>>>
>>>>>
>>>>>    <j:if test="${shallDisplay == 'true'}">
>>>>>      <tr>
>>>>>        <!-- url not defined in POM -->
>>>>>        <j:if test="${empty(pom.url)}">
>>>>>        <x:set var="projecturl1" select="string(@artifactId)"/>
>>>>>        <j:set var="projecturl"
>>>>>value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>>>>>        <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>>>>>        </j:if>
>>>>>
>>>>>        <!-- url defined in POM -->
>>>>>        <j:if test="${!empty(pom.url)}">
>>>>>            <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
>>>>>         </j:if>
>>>>>        <jsl:applyTemplates select="aggregator"/>
>>>>>      </tr>
>>>>>    </j:if>
>>>>>
>>>>>regards,
>>>>>
>>>>>Wim
>>>>>
>>>>>---------------------------------------------------------------------
>>>>>To unsubscribe, e-mail: [hidden email]
>>>>>For additional commands, e-mail: [hidden email]
>>>>>          
>>>>>
>>>>---------------------------------------------------------------------
>>>>To unsubscribe, e-mail: [hidden email]
>>>>For additional commands, e-mail: [hidden email]
>>>>
>>>>
>>>>        
>>>>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [hidden email]
>For additional commands, e-mail: [hidden email]
>
>
>  
>