You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by raulmt <ra...@gmail.com> on 2008/03/19 22:41:46 UTC

Tapestry Modules - Extensions

Hi,

I have a core app and others projects (say project1 to projectN) that add
functionality to this core (they are kind of extensions). The core app is
packaged as a war and project1 to N as jars.

The problem I have is that the core app doesn't have any dependency by code
to the others projects (because the calls to those services is in a dynamic
way) but it needs that when the app is packaged to have these jars in its
lib directory so Tapestry can autoload the modules (and then the services in
that modules). On the other hand, these project 1 to N have dependencies to
core app since they use services and other things from the core.... is there
a way to configure all this with maven so I can run the core app with jetty
(and T5 loading all these modules in project 1 to N) and also packaging a
war containing the core app and the other projects to deploy it on a server?

I've been reading of Inheritance and Aggregation in Maven and looking in the
T5 project structure and I have some clues but I don't see exactly how i
should structure this project.... thanks for any help.

Regards.
-- 
View this message in context: http://www.nabble.com/Tapestry-Modules---Extensions-tp16150189p16150189.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Tapestry Modules - Extensions

Posted by Howard Lewis Ship <hl...@gmail.com>.
What you are seeing is normal; when executing directly from the
workspace, there's no build step that creates the manifests that
Tapestry uses to autoload, thus you must use tapestry.modules JVM
property to manually load the modules.

On Fri, Mar 21, 2008 at 8:58 AM, raulmt <ra...@gmail.com> wrote:
>
>  Thanks Howard, I follow your advice factoring out to a core-library so the
>  web-app and the other projects depend on that. But, despite the web-app does
>  not depends on the other projects, I put that dependency anyway so when I
>  package the web-app it includes the jars from the other projects in the lib
>  directory, and T5 then loads the modules (described in the Manifest) at
>  runtime.
>
>  This works fine when I package the war and deploy it on a server, but when
>  running the app with jetty launcher, I had to add this configuration:
>  http://code.google.com/p/tapestry5-components/issues/detail?id=26
>
>  Regards.
>
>
>
>
>  Howard Lewis Ship wrote:
>  >
>  > I would factor out the shared interfaces into a library-core that
>  > could be inheritted by the app-core and by the add-on projects.
>  >
>  > At runtime, T5 IoC will be able to knit together everything.
>  >
>  > On Wed, Mar 19, 2008 at 2:41 PM, raulmt <ra...@gmail.com> wrote:
>  >>
>  >>  Hi,
>  >>
>  >>  I have a core app and others projects (say project1 to projectN) that
>  >> add
>  >>  functionality to this core (they are kind of extensions). The core app
>  >> is
>  >>  packaged as a war and project1 to N as jars.
>  >>
>  >>  The problem I have is that the core app doesn't have any dependency by
>  >> code
>  >>  to the others projects (because the calls to those services is in a
>  >> dynamic
>  >>  way) but it needs that when the app is packaged to have these jars in
>  >> its
>  >>  lib directory so Tapestry can autoload the modules (and then the
>  >> services in
>  >>  that modules). On the other hand, these project 1 to N have dependencies
>  >> to
>  >>  core app since they use services and other things from the core.... is
>  >> there
>  >>  a way to configure all this with maven so I can run the core app with
>  >> jetty
>  >>  (and T5 loading all these modules in project 1 to N) and also packaging
>  >> a
>  >>  war containing the core app and the other projects to deploy it on a
>  >> server?
>  >>
>  >>  I've been reading of Inheritance and Aggregation in Maven and looking in
>  >> the
>  >>  T5 project structure and I have some clues but I don't see exactly how i
>  >>  should structure this project.... thanks for any help.
>  >>
>  >>  Regards.
>  >>  --
>  >>  View this message in context:
>  >> http://www.nabble.com/Tapestry-Modules---Extensions-tp16150189p16150189.html
>  >>  Sent from the Tapestry - User mailing list archive at Nabble.com.
>  >>
>  >>
>  >>  ---------------------------------------------------------------------
>  >>  To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>  >>  For additional commands, e-mail: users-help@tapestry.apache.org
>  >>
>  >>
>  >
>  >
>  >
>  > --
>  > Howard M. Lewis Ship
>  >
>  > Creator Apache Tapestry and Apache HiveMind
>  >
>  > ---------------------------------------------------------------------
>  > To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>  > For additional commands, e-mail: users-help@tapestry.apache.org
>  >
>  >
>  >
>
>  --
>  View this message in context: http://www.nabble.com/Tapestry-Modules---Extensions-tp16150189p16201174.html
>
>
> Sent from the Tapestry - User mailing list archive at Nabble.com.
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>  For additional commands, e-mail: users-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Tapestry Modules - Extensions

Posted by raulmt <ra...@gmail.com>.
Thanks Howard, I follow your advice factoring out to a core-library so the
web-app and the other projects depend on that. But, despite the web-app does
not depends on the other projects, I put that dependency anyway so when I
package the web-app it includes the jars from the other projects in the lib
directory, and T5 then loads the modules (described in the Manifest) at
runtime.

This works fine when I package the war and deploy it on a server, but when
running the app with jetty launcher, I had to add this configuration:
http://code.google.com/p/tapestry5-components/issues/detail?id=26

Regards.


Howard Lewis Ship wrote:
> 
> I would factor out the shared interfaces into a library-core that
> could be inheritted by the app-core and by the add-on projects.
> 
> At runtime, T5 IoC will be able to knit together everything.
> 
> On Wed, Mar 19, 2008 at 2:41 PM, raulmt <ra...@gmail.com> wrote:
>>
>>  Hi,
>>
>>  I have a core app and others projects (say project1 to projectN) that
>> add
>>  functionality to this core (they are kind of extensions). The core app
>> is
>>  packaged as a war and project1 to N as jars.
>>
>>  The problem I have is that the core app doesn't have any dependency by
>> code
>>  to the others projects (because the calls to those services is in a
>> dynamic
>>  way) but it needs that when the app is packaged to have these jars in
>> its
>>  lib directory so Tapestry can autoload the modules (and then the
>> services in
>>  that modules). On the other hand, these project 1 to N have dependencies
>> to
>>  core app since they use services and other things from the core.... is
>> there
>>  a way to configure all this with maven so I can run the core app with
>> jetty
>>  (and T5 loading all these modules in project 1 to N) and also packaging
>> a
>>  war containing the core app and the other projects to deploy it on a
>> server?
>>
>>  I've been reading of Inheritance and Aggregation in Maven and looking in
>> the
>>  T5 project structure and I have some clues but I don't see exactly how i
>>  should structure this project.... thanks for any help.
>>
>>  Regards.
>>  --
>>  View this message in context:
>> http://www.nabble.com/Tapestry-Modules---Extensions-tp16150189p16150189.html
>>  Sent from the Tapestry - User mailing list archive at Nabble.com.
>>
>>
>>  ---------------------------------------------------------------------
>>  To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>>  For additional commands, e-mail: users-help@tapestry.apache.org
>>
>>
> 
> 
> 
> -- 
> Howard M. Lewis Ship
> 
> Creator Apache Tapestry and Apache HiveMind
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Tapestry-Modules---Extensions-tp16150189p16201174.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Tapestry Modules - Extensions

Posted by Howard Lewis Ship <hl...@gmail.com>.
I would factor out the shared interfaces into a library-core that
could be inheritted by the app-core and by the add-on projects.

At runtime, T5 IoC will be able to knit together everything.

On Wed, Mar 19, 2008 at 2:41 PM, raulmt <ra...@gmail.com> wrote:
>
>  Hi,
>
>  I have a core app and others projects (say project1 to projectN) that add
>  functionality to this core (they are kind of extensions). The core app is
>  packaged as a war and project1 to N as jars.
>
>  The problem I have is that the core app doesn't have any dependency by code
>  to the others projects (because the calls to those services is in a dynamic
>  way) but it needs that when the app is packaged to have these jars in its
>  lib directory so Tapestry can autoload the modules (and then the services in
>  that modules). On the other hand, these project 1 to N have dependencies to
>  core app since they use services and other things from the core.... is there
>  a way to configure all this with maven so I can run the core app with jetty
>  (and T5 loading all these modules in project 1 to N) and also packaging a
>  war containing the core app and the other projects to deploy it on a server?
>
>  I've been reading of Inheritance and Aggregation in Maven and looking in the
>  T5 project structure and I have some clues but I don't see exactly how i
>  should structure this project.... thanks for any help.
>
>  Regards.
>  --
>  View this message in context: http://www.nabble.com/Tapestry-Modules---Extensions-tp16150189p16150189.html
>  Sent from the Tapestry - User mailing list archive at Nabble.com.
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>  For additional commands, e-mail: users-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org