Re: Converting AppFuse to a Maven 2 Project

2006-08-18 Thread mraible

While this looks like an ideal solution, it doesn't appear to work as I'd
like. 

Since I have 4 web/war projects implementing the same thing, it'd be nice to
put common files (i.e. filters, listeners) in a "common" project and have
that one overlay the other war projects.  Eventually, I'm hoping users will
be able to "double war overlay" and have the appfuse-jsf (and its dependent
appfuse-web-common war) war project overlay theirs.

However, having the web-common war as a dependency for appfuse-jsf doesn't
seem to work.  In my pom.xml, I have:

AppFuse JSF Module

install


maven-war-plugin



...

${pom.groupId}
appfuse-web-common
${pom.version}
war


Yet when I compile appfuse-jsf, it doesn't find the classes in
appfuse-web-common's WEB-INF/classes directory.  Seems like a bug to me. 
I'm sure the solution is to create a JAR for web-common and a WAR for
common-web, but I think it's more intuitive for the classloader to recognize
classes from the overlayed WAR.

Another issue I'm seeing is that the dependencies from appfuse-web-common
aren't recognized in appfuse-jsf.  For example, the following dependencies
are in appfuse-web-common, and needed by appfuse-jsf as well.  However,
appfuse-jsf doesn't find them when compiling.


javax.servlet
jsp-api
2.0
provided


javax.servlet
servlet-api
2.4
provided


I'm thought this might be an issue with provided, but I
changed it to compile and the problem still exists.

How hard would it be to change the WAR overlay (or war dependency) to
support class and dependency resolution?  I'm willing to do the work if
someone can point me in the right direction.

Thanks,

Matt

Carlos Sanchez-4 wrote:
> 
> even better ;)
> http://maven.apache.org/plugins/maven-war-plugin/examples/war-overlay.html
> 
> On 7/19/06, Jörg Schaible <[EMAIL PROTECTED]> wrote:
>> Hi Matt,
>>
>> Matt Raible wrote on Wednesday, July 19, 2006 7:56 AM:
>>
>> [snip]
>>
>> > With Maven and separate modules,
>> > it seems like duplication might be a necessary evil.  For example,
>> > there are many common CSS/JavaScript files between the web framework
>> > implementations.  There's no way to copy these into each option's WAR
>> > at build-time is there?  The easiest way to solve this might be
>> > svn:externals AFAIK.
>>
>> Simply build a toolkit.war with your files to share. Let other wars
>> dependend on it and anything will be copied over. See war plugin
>> documentation.
>>
>> - Jörg
>>
>> -
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
> 
> 
> -- 
> I could give you my word as a Spaniard.
> No good. I've known too many Spaniards.
>  -- The Princess Bride
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Converting-AppFuse-to-a-Maven-2-Project-tf1964609.html#a5870757
Sent from the Maven - Users forum at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Converting AppFuse to a Maven 2 Project

2006-08-14 Thread Scott Ryan
Matt,
Check out the project attached to the jira ticket
http://jira.codehaus.org/browse/MOJO-315 .  It has a zip with a project
structure similar to what you are looking at and that should build and you
can use as a template.  It has been a while since I posted it but it may be
something you can modify to work.

Scott Ryan
Chief Technology Officer
Soaring Eagle L.L.C.
[EMAIL PROTECTED]
www.soaringeagleco.com
(303) 263-3044

-Original Message-
From: mraible [mailto:[EMAIL PROTECTED]
Sent: Wednesday, August 09, 2006 10:24 AM
To: users@maven.apache.org
Subject: Re: Converting AppFuse to a Maven 2 Project



I started working on the Maven 2 conversion last night. I'm currently using
Carlos's nested recommendation.

Here's a screenshot of the current structure:

http://raibledesigns.com/repository/images/appfuse2-structure.png

Using this structure, I get errors stating that the "data" and "web" parent
projects should have a packaging type of "pom".  However, I want these
projects to create their own JAR artifacts.  Should these be moved into
"common" projects instead of having them in the root of data and web?

Thanks,

Matt
--
View this message in context:
http://www.nabble.com/Converting-AppFuse-to-a-Maven-2-Project-tf1964609.html
#a5729055
Sent from the Maven - Users forum at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Converting AppFuse to a Maven 2 Project

2006-08-13 Thread Scott Ryan
I posted a sample project on Jira and copied it to the appfuse group that
had a similar structure and had the poms set up to build correctly.  The
structure was close to what you are proposing.  I will see if i can dig it
up and you can just modify it to your liking.

Scott Ryan
Chief Technology Officer
Soaring Eagle L.L.C.
[EMAIL PROTECTED]
www.soaringeagleco.com
(303) 263-3044

-Original Message-
From: mraible [mailto:[EMAIL PROTECTED]
Sent: Wednesday, August 09, 2006 10:24 AM
To: users@maven.apache.org
Subject: Re: Converting AppFuse to a Maven 2 Project



I started working on the Maven 2 conversion last night. I'm currently using
Carlos's nested recommendation.

Here's a screenshot of the current structure:

http://raibledesigns.com/repository/images/appfuse2-structure.png

Using this structure, I get errors stating that the "data" and "web" parent
projects should have a packaging type of "pom".  However, I want these
projects to create their own JAR artifacts.  Should these be moved into
"common" projects instead of having them in the root of data and web?

Thanks,

Matt
--
View this message in context:
http://www.nabble.com/Converting-AppFuse-to-a-Maven-2-Project-tf1964609.html
#a5729055
Sent from the Maven - Users forum at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Converting AppFuse to a Maven 2 Project

2006-08-09 Thread Carlos Sanchez

yes, you need to move them to common

On 8/9/06, mraible <[EMAIL PROTECTED]> wrote:


I started working on the Maven 2 conversion last night. I'm currently using
Carlos's nested recommendation.

Here's a screenshot of the current structure:

http://raibledesigns.com/repository/images/appfuse2-structure.png

Using this structure, I get errors stating that the "data" and "web" parent
projects should have a packaging type of "pom".  However, I want these
projects to create their own JAR artifacts.  Should these be moved into
"common" projects instead of having them in the root of data and web?

Thanks,

Matt
--
View this message in context: 
http://www.nabble.com/Converting-AppFuse-to-a-Maven-2-Project-tf1964609.html#a5729055
Sent from the Maven - Users forum at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
I could give you my word as a Spaniard.
No good. I've known too many Spaniards.
-- The Princess Bride

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Converting AppFuse to a Maven 2 Project

2006-08-09 Thread Mike Perham




common sounds right.  "Leaf" projects can be jar/war/pom/ear/etc.
Aggregating/parent projects must be pom.  You can hack a pom to have a
binary with the assembly plugin but it's a questionable design IMO.

mike

mraible <[EMAIL PROTECTED]> wrote on 08/09/2006 11:23:51 AM:

>
> I started working on the Maven 2 conversion last night. I'm currently
using
> Carlos's nested recommendation.
>
> Here's a screenshot of the current structure:
>
> http://raibledesigns.com/repository/images/appfuse2-structure.png
>
> Using this structure, I get errors stating that the "data" and "web"
parent
> projects should have a packaging type of "pom".  However, I want these
> projects to create their own JAR artifacts.  Should these be moved into
> "common" projects instead of having them in the root of data and web?
>
> Thanks,
>
> Matt
> --
> View this message in context: http://www.nabble.com/Converting-
> AppFuse-to-a-Maven-2-Project-tf1964609.html#a5729055
> Sent from the Maven - Users forum at Nabble.com.
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>

Re: Converting AppFuse to a Maven 2 Project

2006-08-09 Thread mraible

I started working on the Maven 2 conversion last night. I'm currently using
Carlos's nested recommendation. 

Here's a screenshot of the current structure:

http://raibledesigns.com/repository/images/appfuse2-structure.png

Using this structure, I get errors stating that the "data" and "web" parent
projects should have a packaging type of "pom".  However, I want these
projects to create their own JAR artifacts.  Should these be moved into
"common" projects instead of having them in the root of data and web?

Thanks,

Matt
-- 
View this message in context: 
http://www.nabble.com/Converting-AppFuse-to-a-Maven-2-Project-tf1964609.html#a5729055
Sent from the Maven - Users forum at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Cargo uberwar PITA (was RE: Converting AppFuse to a Maven 2 Project)

2006-07-19 Thread Vincent Massol
Hi Alex,

> -Original Message-
> From: Alex Shneyderman [mailto:[EMAIL PROTECTED]
> Sent: mercredi 19 juillet 2006 13:42
> To: Maven Users List
> Subject: Re: Converting AppFuse to a Maven 2 Project

[snip]

> [...] so take a look at cargo:uberwar
> (cargo.codehaus.org). It allows for custom merging callbacks. Although
> a pain in an ass to set up (hint: use latest snapshot)

That's some interesting feedback! It would be real nice if you could send an
email to the cargo list explaining what you think is painful and how you
think it could be improved.

Thanks
-Vincent






___ 
Découvrez un nouveau moyen de poser toutes vos questions quelque soit le sujet 
! 
Yahoo! Questions/Réponses pour partager vos connaissances, vos opinions et vos 
expériences. 
http://fr.answers.yahoo.com 


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Converting AppFuse to a Maven 2 Project

2006-07-19 Thread Alex Shneyderman

Simply build a toolkit.war with your files to share. Let other wars dependend 
on it
and anything will be copied over. See war plugin documentation.


WAR plugin does not allow for custom merging (web.xml,
springContext.xml, etc.), so take a look at cargo:uberwar
(cargo.codehaus.org). It allows for custom merging callbacks. Although
a pain in an ass to set up (hint: use latest snapshot)

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Converting AppFuse to a Maven 2 Project

2006-07-19 Thread Carlos Sanchez

even better ;)
http://maven.apache.org/plugins/maven-war-plugin/examples/war-overlay.html

On 7/19/06, Jörg Schaible <[EMAIL PROTECTED]> wrote:

Hi Matt,

Matt Raible wrote on Wednesday, July 19, 2006 7:56 AM:

[snip]

> With Maven and separate modules,
> it seems like duplication might be a necessary evil.  For example,
> there are many common CSS/JavaScript files between the web framework
> implementations.  There's no way to copy these into each option's WAR
> at build-time is there?  The easiest way to solve this might be
> svn:externals AFAIK.

Simply build a toolkit.war with your files to share. Let other wars dependend 
on it and anything will be copied over. See war plugin documentation.

- Jörg

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
I could give you my word as a Spaniard.
No good. I've known too many Spaniards.
-- The Princess Bride

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Converting AppFuse to a Maven 2 Project

2006-07-19 Thread Jörg Schaible
Hi Matt,

Matt Raible wrote on Wednesday, July 19, 2006 7:56 AM:

[snip]

> With Maven and separate modules,
> it seems like duplication might be a necessary evil.  For example,
> there are many common CSS/JavaScript files between the web framework
> implementations.  There's no way to copy these into each option's WAR
> at build-time is there?  The easiest way to solve this might be
> svn:externals AFAIK. 

Simply build a toolkit.war with your files to share. Let other wars dependend 
on it and anything will be copied over. See war plugin documentation.

- Jörg

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Converting AppFuse to a Maven 2 Project

2006-07-19 Thread Carlos Sanchez

I like more the nested approach, it allows you to grow the number of
frameworks easier.

About the war resources i think you should be able to pack them in a
jar in a separate project and then  depend on it in the war projects,
uncompressing it with maybe the antrun plugin before making the war

On 7/19/06, Matt Raible <[EMAIL PROTECTED]> wrote:

Hello all,

I'm starting to convert AppFuse to be a Maven 2 project, and
(hopefully) use Maven 2's archetype system to allow users to create
new projects.

Initially, I'm thinking of a directory structure that contains many
different modules, maybe something like this:

hibernate
ibatis
core (services and common dao/web/model classes, could also be named service)
jsf
tapestry
struts-1
struts-2
springmvc (or spring-mvc)

I'm also open to allowing the dao and web tiers to be nested, so they
can be built and tested together:

data
   hibernate
   ibatis
core
web
   jsf
   tapestry
   etc.

Which is a better way to structure things in our source control
repository?  For the end user, hopefully it won't matter because
they'll only have a few AppFuse dependencies in their pom.xml (i.e.
appfuse-hibernate + appfuse-struts).  We can hopefully prompt them for
a multi-module project or a single-module project, and create the
directory structure appropriately.

Currently, AppFuse uses Ant to "install" the various modules.  This is
a pain because it requires parsing and replacing XML.  The good thing
about it is it reduces duplication.  With Maven and separate modules,
it seems like duplication might be a necessary evil.  For example,
there are many common CSS/JavaScript files between the web framework
implementations.  There's no way to copy these into each option's WAR
at build-time is there?  The easiest way to solve this might be
svn:externals AFAIK.

Thanks,

Matt

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
I could give you my word as a Spaniard.
No good. I've known too many Spaniards.
-- The Princess Bride

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Converting AppFuse to a Maven 2 Project

2006-07-18 Thread Ray Tsang

Hi Matt,

We have worked on some ideas here
http://saturnism.wordpress.com/2006/06/16/prototype/ .  We can post the code
fairly easily to somehwere.  I think there were talks about a war plugin
that are able to make copies of another war project into the current?  But
to include lots of common files (dojo javascripts in our case) was a pain w/
how maven2 archetype works.  Currently we serve it from a resource servlet
that serves those from the classpath (i.e. a single jar dependecy).

ray,

On 7/18/06, Matt Raible <[EMAIL PROTECTED]> wrote:


Hello all,

I'm starting to convert AppFuse to be a Maven 2 project, and
(hopefully) use Maven 2's archetype system to allow users to create
new projects.

Initially, I'm thinking of a directory structure that contains many
different modules, maybe something like this:

hibernate
ibatis
core (services and common dao/web/model classes, could also be named
service)
jsf
tapestry
struts-1
struts-2
springmvc (or spring-mvc)

I'm also open to allowing the dao and web tiers to be nested, so they
can be built and tested together:

data
   hibernate
   ibatis
core
web
   jsf
   tapestry
   etc.

Which is a better way to structure things in our source control
repository?  For the end user, hopefully it won't matter because
they'll only have a few AppFuse dependencies in their pom.xml (i.e.
appfuse-hibernate + appfuse-struts).  We can hopefully prompt them for
a multi-module project or a single-module project, and create the
directory structure appropriately.

Currently, AppFuse uses Ant to "install" the various modules.  This is
a pain because it requires parsing and replacing XML.  The good thing
about it is it reduces duplication.  With Maven and separate modules,
it seems like duplication might be a necessary evil.  For example,
there are many common CSS/JavaScript files between the web framework
implementations.  There's no way to copy these into each option's WAR
at build-time is there?  The easiest way to solve this might be
svn:externals AFAIK.

Thanks,

Matt

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]