You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by Lyndon Washington <ho...@the-washingtons.com> on 2013/03/07 14:41:31 UTC

tomee-maven-plugin: How to reference war modules in a maven build

Hi,

I have a maven project whig has a parent that has a 'pom' packaging. Its
submodules are made up of war, jar and pom project types.

I have added a dependency on the parent project to the tomee-maven-plugin
plugin and my hope is to be able to start an instance of tomee, from the
root folder of the project and have all of the war submodules added to the
tomee instance.

I used to use a jetty plugin, and utilized the capability to reference
generated war's using the jetty plugins *contenxtHandlers* parameter:
            <plugin>
                <groupId>org.mortbay.jetty</groupId>
                <artifactId>maven-jetty-plugin</artifactId>
                <version>6.1.10</version>
                <configuration>
                    <stopPort>9966</stopPort>
                    <stopKey>jetty-stop</stopKey>
                    <scanIntervalSeconds>10</scanIntervalSeconds>
                    <contextHandlers>
                        <contextHandler
implementation="org.mortbay.jetty.webapp.WebAppContext">

<war>${project.build.directory}/dependency/client.spiffyui-war</war>
                            <contextPath>/</contextPath>
                        </contextHandler>
                        <contextHandler
implementation="org.mortbay.jetty.webapp.WebAppContext">

<war>${project.build.directory}/dependency/server.war</war>
                            <contextPath>/api</contextPath>
                        </contextHandler>
                        <contextHandler
implementation="org.mortbay.jetty.webapp.WebAppContext">

<war>${project.build.directory}/dependency/server-apidoc.zip</war>
                            <contextPath>/doc</contextPath>
                        </contextHandler>
                        <contextHandler
implementation="org.mortbay.jetty.webapp.WebAppContext">

<war>${project.build.directory}/dependency/dtpserver.war</war>
                            <contextPath>/dtp</contextPath>
                        </contextHandler>
                        <contextHandler
implementation="org.mortbay.jetty.webapp.WebAppContext">

<war>${project.build.directory}/dependency/daas.war</war>
                            <contextPath>/daas</contextPath>
                        </contextHandler>
                        <contextHandler
implementation="org.mortbay.jetty.webapp.WebAppContext">

<war>${project.build.directory}/dependency/workflow-api.war</war>
                            <contextPath>/workflow-api</contextPath>
                        </contextHandler>
                    </contextHandlers>
                </configuration>
            </plugin>

Is there a way to reference the same war's from the tomee plugins
configuration settings?  I have tried to use the *webapps* parameter but
that appears to rely on the GAV maven syntax, and I was not sure if I could
specify a path with that parameter or not.

Cheers,
-Lyndon-
Lyndon Washington

Re: tomee-maven-plugin: How to reference war modules in a maven build

Posted by Lyndon Washington <ho...@the-washingtons.com>.
Thanks Romain! I had forgotten about the -N parameter :)

Cheers,
-Lyndon-


On Thu, Mar 7, 2013 at 9:50 AM, Romain Manni-Bucau <rm...@gmail.com>wrote:

> that's the way maven works. you can use -N to avoid to run it for children
>
> creating another module to simply deploy works too (and is better because
> you force dependencies between deployment an module)
>
> *Romain Manni-Bucau*
> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> *Blog: **http://rmannibucau.wordpress.com/*<
> http://rmannibucau.wordpress.com/>
> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> *Github: https://github.com/rmannibucau*
>
>
>
> 2013/3/7 Lyndon Washington <ho...@the-washingtons.com>
>
> > Hi Romain,
> >
> > Thanks for the quick response.
> >
> > Unfortunately, if I place that configuration in the root pom, it get's
> > ignored. The behavior I appear to be witnessing is that for each maven
> > submodule the tomee plugin is attempting to run an instance of tomee.
> >
> > So, the first submodule is a "common" module that just contains common
> > project configuration definitions, but tomee is started in that project
> and
> > since "tomee:run" was used it waits there and does not proceed to the
> other
> > projects.
> >
> > When I tried "mvn tomee:configtest" it performed the check in *all* of
> the
> > submodules.
> >
> > So, to rephrase the question, in a situation where I have submodules, is
> > there a way to prevent tomee trying to run in each, and just run in the
> > parent module using the "web apps" configuration?
> >
> > Cheers,
> > -Lyndon-
> >
> >
> > On Thu, Mar 7, 2013 at 8:44 AM, Romain Manni-Bucau <
> rmannibucau@gmail.com
> > >wrote:
> >
> > > Hi,
> > >
> > > simply use in <configuration>:
> > >
> > >
> > >     <webapps>
> > >
> >  <webapp>org.superbiz:my-simple-webapp:1.0.0?name=mycontext</webapp>
> > >     </webapps>
> > >
> > >
> > > i think it should be enough
> > >
> > > *Romain Manni-Bucau*
> > > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> > > *Blog: **http://rmannibucau.wordpress.com/*<
> > > http://rmannibucau.wordpress.com/>
> > > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> > > *Github: https://github.com/rmannibucau*
> > >
> > >
> > >
> > > 2013/3/7 Lyndon Washington <ho...@the-washingtons.com>
> > >
> > > > Hi,
> > > >
> > > > I have a maven project whig has a parent that has a 'pom' packaging.
> > Its
> > > > submodules are made up of war, jar and pom project types.
> > > >
> > > > I have added a dependency on the parent project to the
> > tomee-maven-plugin
> > > > plugin and my hope is to be able to start an instance of tomee, from
> > the
> > > > root folder of the project and have all of the war submodules added
> to
> > > the
> > > > tomee instance.
> > > >
> > > > I used to use a jetty plugin, and utilized the capability to
> reference
> > > > generated war's using the jetty plugins *contenxtHandlers* parameter:
> > > >             <plugin>
> > > >                 <groupId>org.mortbay.jetty</groupId>
> > > >                 <artifactId>maven-jetty-plugin</artifactId>
> > > >                 <version>6.1.10</version>
> > > >                 <configuration>
> > > >                     <stopPort>9966</stopPort>
> > > >                     <stopKey>jetty-stop</stopKey>
> > > >                     <scanIntervalSeconds>10</scanIntervalSeconds>
> > > >                     <contextHandlers>
> > > >                         <contextHandler
> > > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > > >
> > > > <war>${project.build.directory}/dependency/client.spiffyui-war</war>
> > > >                             <contextPath>/</contextPath>
> > > >                         </contextHandler>
> > > >                         <contextHandler
> > > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > > >
> > > > <war>${project.build.directory}/dependency/server.war</war>
> > > >                             <contextPath>/api</contextPath>
> > > >                         </contextHandler>
> > > >                         <contextHandler
> > > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > > >
> > > > <war>${project.build.directory}/dependency/server-apidoc.zip</war>
> > > >                             <contextPath>/doc</contextPath>
> > > >                         </contextHandler>
> > > >                         <contextHandler
> > > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > > >
> > > > <war>${project.build.directory}/dependency/dtpserver.war</war>
> > > >                             <contextPath>/dtp</contextPath>
> > > >                         </contextHandler>
> > > >                         <contextHandler
> > > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > > >
> > > > <war>${project.build.directory}/dependency/daas.war</war>
> > > >                             <contextPath>/daas</contextPath>
> > > >                         </contextHandler>
> > > >                         <contextHandler
> > > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > > >
> > > > <war>${project.build.directory}/dependency/workflow-api.war</war>
> > > >                             <contextPath>/workflow-api</contextPath>
> > > >                         </contextHandler>
> > > >                     </contextHandlers>
> > > >                 </configuration>
> > > >             </plugin>
> > > >
> > > > Is there a way to reference the same war's from the tomee plugins
> > > > configuration settings?  I have tried to use the *webapps* parameter
> > but
> > > > that appears to rely on the GAV maven syntax, and I was not sure if I
> > > could
> > > > specify a path with that parameter or not.
> > > >
> > > > Cheers,
> > > > -Lyndon-
> > > > Lyndon Washington
> > > >
> > >
> >
>

Re: tomee-maven-plugin: How to reference war modules in a maven build

Posted by Romain Manni-Bucau <rm...@gmail.com>.
that's the way maven works. you can use -N to avoid to run it for children

creating another module to simply deploy works too (and is better because
you force dependencies between deployment an module)

*Romain Manni-Bucau*
*Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*



2013/3/7 Lyndon Washington <ho...@the-washingtons.com>

> Hi Romain,
>
> Thanks for the quick response.
>
> Unfortunately, if I place that configuration in the root pom, it get's
> ignored. The behavior I appear to be witnessing is that for each maven
> submodule the tomee plugin is attempting to run an instance of tomee.
>
> So, the first submodule is a "common" module that just contains common
> project configuration definitions, but tomee is started in that project and
> since "tomee:run" was used it waits there and does not proceed to the other
> projects.
>
> When I tried "mvn tomee:configtest" it performed the check in *all* of the
> submodules.
>
> So, to rephrase the question, in a situation where I have submodules, is
> there a way to prevent tomee trying to run in each, and just run in the
> parent module using the "web apps" configuration?
>
> Cheers,
> -Lyndon-
>
>
> On Thu, Mar 7, 2013 at 8:44 AM, Romain Manni-Bucau <rmannibucau@gmail.com
> >wrote:
>
> > Hi,
> >
> > simply use in <configuration>:
> >
> >
> >     <webapps>
> >
>  <webapp>org.superbiz:my-simple-webapp:1.0.0?name=mycontext</webapp>
> >     </webapps>
> >
> >
> > i think it should be enough
> >
> > *Romain Manni-Bucau*
> > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> > *Blog: **http://rmannibucau.wordpress.com/*<
> > http://rmannibucau.wordpress.com/>
> > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> > *Github: https://github.com/rmannibucau*
> >
> >
> >
> > 2013/3/7 Lyndon Washington <ho...@the-washingtons.com>
> >
> > > Hi,
> > >
> > > I have a maven project whig has a parent that has a 'pom' packaging.
> Its
> > > submodules are made up of war, jar and pom project types.
> > >
> > > I have added a dependency on the parent project to the
> tomee-maven-plugin
> > > plugin and my hope is to be able to start an instance of tomee, from
> the
> > > root folder of the project and have all of the war submodules added to
> > the
> > > tomee instance.
> > >
> > > I used to use a jetty plugin, and utilized the capability to reference
> > > generated war's using the jetty plugins *contenxtHandlers* parameter:
> > >             <plugin>
> > >                 <groupId>org.mortbay.jetty</groupId>
> > >                 <artifactId>maven-jetty-plugin</artifactId>
> > >                 <version>6.1.10</version>
> > >                 <configuration>
> > >                     <stopPort>9966</stopPort>
> > >                     <stopKey>jetty-stop</stopKey>
> > >                     <scanIntervalSeconds>10</scanIntervalSeconds>
> > >                     <contextHandlers>
> > >                         <contextHandler
> > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > >
> > > <war>${project.build.directory}/dependency/client.spiffyui-war</war>
> > >                             <contextPath>/</contextPath>
> > >                         </contextHandler>
> > >                         <contextHandler
> > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > >
> > > <war>${project.build.directory}/dependency/server.war</war>
> > >                             <contextPath>/api</contextPath>
> > >                         </contextHandler>
> > >                         <contextHandler
> > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > >
> > > <war>${project.build.directory}/dependency/server-apidoc.zip</war>
> > >                             <contextPath>/doc</contextPath>
> > >                         </contextHandler>
> > >                         <contextHandler
> > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > >
> > > <war>${project.build.directory}/dependency/dtpserver.war</war>
> > >                             <contextPath>/dtp</contextPath>
> > >                         </contextHandler>
> > >                         <contextHandler
> > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > >
> > > <war>${project.build.directory}/dependency/daas.war</war>
> > >                             <contextPath>/daas</contextPath>
> > >                         </contextHandler>
> > >                         <contextHandler
> > > implementation="org.mortbay.jetty.webapp.WebAppContext">
> > >
> > > <war>${project.build.directory}/dependency/workflow-api.war</war>
> > >                             <contextPath>/workflow-api</contextPath>
> > >                         </contextHandler>
> > >                     </contextHandlers>
> > >                 </configuration>
> > >             </plugin>
> > >
> > > Is there a way to reference the same war's from the tomee plugins
> > > configuration settings?  I have tried to use the *webapps* parameter
> but
> > > that appears to rely on the GAV maven syntax, and I was not sure if I
> > could
> > > specify a path with that parameter or not.
> > >
> > > Cheers,
> > > -Lyndon-
> > > Lyndon Washington
> > >
> >
>

Re: tomee-maven-plugin: How to reference war modules in a maven build

Posted by Lyndon Washington <ho...@the-washingtons.com>.
Hi Romain,

Thanks for the quick response.

Unfortunately, if I place that configuration in the root pom, it get's
ignored. The behavior I appear to be witnessing is that for each maven
submodule the tomee plugin is attempting to run an instance of tomee.

So, the first submodule is a "common" module that just contains common
project configuration definitions, but tomee is started in that project and
since "tomee:run" was used it waits there and does not proceed to the other
projects.

When I tried "mvn tomee:configtest" it performed the check in *all* of the
submodules.

So, to rephrase the question, in a situation where I have submodules, is
there a way to prevent tomee trying to run in each, and just run in the
parent module using the "web apps" configuration?

Cheers,
-Lyndon-


On Thu, Mar 7, 2013 at 8:44 AM, Romain Manni-Bucau <rm...@gmail.com>wrote:

> Hi,
>
> simply use in <configuration>:
>
>
>     <webapps>
>        <webapp>org.superbiz:my-simple-webapp:1.0.0?name=mycontext</webapp>
>     </webapps>
>
>
> i think it should be enough
>
> *Romain Manni-Bucau*
> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
> *Blog: **http://rmannibucau.wordpress.com/*<
> http://rmannibucau.wordpress.com/>
> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> *Github: https://github.com/rmannibucau*
>
>
>
> 2013/3/7 Lyndon Washington <ho...@the-washingtons.com>
>
> > Hi,
> >
> > I have a maven project whig has a parent that has a 'pom' packaging. Its
> > submodules are made up of war, jar and pom project types.
> >
> > I have added a dependency on the parent project to the tomee-maven-plugin
> > plugin and my hope is to be able to start an instance of tomee, from the
> > root folder of the project and have all of the war submodules added to
> the
> > tomee instance.
> >
> > I used to use a jetty plugin, and utilized the capability to reference
> > generated war's using the jetty plugins *contenxtHandlers* parameter:
> >             <plugin>
> >                 <groupId>org.mortbay.jetty</groupId>
> >                 <artifactId>maven-jetty-plugin</artifactId>
> >                 <version>6.1.10</version>
> >                 <configuration>
> >                     <stopPort>9966</stopPort>
> >                     <stopKey>jetty-stop</stopKey>
> >                     <scanIntervalSeconds>10</scanIntervalSeconds>
> >                     <contextHandlers>
> >                         <contextHandler
> > implementation="org.mortbay.jetty.webapp.WebAppContext">
> >
> > <war>${project.build.directory}/dependency/client.spiffyui-war</war>
> >                             <contextPath>/</contextPath>
> >                         </contextHandler>
> >                         <contextHandler
> > implementation="org.mortbay.jetty.webapp.WebAppContext">
> >
> > <war>${project.build.directory}/dependency/server.war</war>
> >                             <contextPath>/api</contextPath>
> >                         </contextHandler>
> >                         <contextHandler
> > implementation="org.mortbay.jetty.webapp.WebAppContext">
> >
> > <war>${project.build.directory}/dependency/server-apidoc.zip</war>
> >                             <contextPath>/doc</contextPath>
> >                         </contextHandler>
> >                         <contextHandler
> > implementation="org.mortbay.jetty.webapp.WebAppContext">
> >
> > <war>${project.build.directory}/dependency/dtpserver.war</war>
> >                             <contextPath>/dtp</contextPath>
> >                         </contextHandler>
> >                         <contextHandler
> > implementation="org.mortbay.jetty.webapp.WebAppContext">
> >
> > <war>${project.build.directory}/dependency/daas.war</war>
> >                             <contextPath>/daas</contextPath>
> >                         </contextHandler>
> >                         <contextHandler
> > implementation="org.mortbay.jetty.webapp.WebAppContext">
> >
> > <war>${project.build.directory}/dependency/workflow-api.war</war>
> >                             <contextPath>/workflow-api</contextPath>
> >                         </contextHandler>
> >                     </contextHandlers>
> >                 </configuration>
> >             </plugin>
> >
> > Is there a way to reference the same war's from the tomee plugins
> > configuration settings?  I have tried to use the *webapps* parameter but
> > that appears to rely on the GAV maven syntax, and I was not sure if I
> could
> > specify a path with that parameter or not.
> >
> > Cheers,
> > -Lyndon-
> > Lyndon Washington
> >
>

Re: tomee-maven-plugin: How to reference war modules in a maven build

Posted by Romain Manni-Bucau <rm...@gmail.com>.
Hi,

simply use in <configuration>:


    <webapps>
       <webapp>org.superbiz:my-simple-webapp:1.0.0?name=mycontext</webapp>
    </webapps>


i think it should be enough

*Romain Manni-Bucau*
*Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*



2013/3/7 Lyndon Washington <ho...@the-washingtons.com>

> Hi,
>
> I have a maven project whig has a parent that has a 'pom' packaging. Its
> submodules are made up of war, jar and pom project types.
>
> I have added a dependency on the parent project to the tomee-maven-plugin
> plugin and my hope is to be able to start an instance of tomee, from the
> root folder of the project and have all of the war submodules added to the
> tomee instance.
>
> I used to use a jetty plugin, and utilized the capability to reference
> generated war's using the jetty plugins *contenxtHandlers* parameter:
>             <plugin>
>                 <groupId>org.mortbay.jetty</groupId>
>                 <artifactId>maven-jetty-plugin</artifactId>
>                 <version>6.1.10</version>
>                 <configuration>
>                     <stopPort>9966</stopPort>
>                     <stopKey>jetty-stop</stopKey>
>                     <scanIntervalSeconds>10</scanIntervalSeconds>
>                     <contextHandlers>
>                         <contextHandler
> implementation="org.mortbay.jetty.webapp.WebAppContext">
>
> <war>${project.build.directory}/dependency/client.spiffyui-war</war>
>                             <contextPath>/</contextPath>
>                         </contextHandler>
>                         <contextHandler
> implementation="org.mortbay.jetty.webapp.WebAppContext">
>
> <war>${project.build.directory}/dependency/server.war</war>
>                             <contextPath>/api</contextPath>
>                         </contextHandler>
>                         <contextHandler
> implementation="org.mortbay.jetty.webapp.WebAppContext">
>
> <war>${project.build.directory}/dependency/server-apidoc.zip</war>
>                             <contextPath>/doc</contextPath>
>                         </contextHandler>
>                         <contextHandler
> implementation="org.mortbay.jetty.webapp.WebAppContext">
>
> <war>${project.build.directory}/dependency/dtpserver.war</war>
>                             <contextPath>/dtp</contextPath>
>                         </contextHandler>
>                         <contextHandler
> implementation="org.mortbay.jetty.webapp.WebAppContext">
>
> <war>${project.build.directory}/dependency/daas.war</war>
>                             <contextPath>/daas</contextPath>
>                         </contextHandler>
>                         <contextHandler
> implementation="org.mortbay.jetty.webapp.WebAppContext">
>
> <war>${project.build.directory}/dependency/workflow-api.war</war>
>                             <contextPath>/workflow-api</contextPath>
>                         </contextHandler>
>                     </contextHandlers>
>                 </configuration>
>             </plugin>
>
> Is there a way to reference the same war's from the tomee plugins
> configuration settings?  I have tried to use the *webapps* parameter but
> that appears to rely on the GAV maven syntax, and I was not sure if I could
> specify a path with that parameter or not.
>
> Cheers,
> -Lyndon-
> Lyndon Washington
>