On Jul 19, 2006, at 1:36 PM, Sean Schofield wrote:

To expand upon my earlier idea ...

petstore
  src/main/java <-- domain objects and service interfaces go here
petstore/petstore-1 <-- specific technology combos
petstore/petstore-2

So you have a petstore.jar artifact produced in the top level module
and petstore-1.war and petstore-2.war in the lower levels.  You are
reusing the domain and service interfaces across all of the different
combo apps.


Will that work with Maven? The pom in petstore would be type 'jar' with modules? Will Maven even do that? If so, cool.

But if one combo uses facelets and another uses clay, we don't really
want a whole separate war.  Maybe we could have a switch in the maven
build where you select your view technology?  That might be kind of
cool.  I'm working on a project with Matt Raible (creator of appfuse)
right now so maybe he has some ideas on how to cut down on
duplication.  Stylesheets and images are another area where we don't
want to duplicate things.


Ahhh...this is bringing back memories. I was trying to do the same thing a few years ago with the mailreader app for those one-off versions that were scattered around svn (mailreader, mailreader-el, mailreader-chain, etc) and I had some luck with a (Maven 1) custom copy bit in the maven.xml (the scripted part of Maven 1).

Basically, there was a base set of files in a directory, and then sibling folders that when executed would copy the base first, then overlay it's sources (java, jsp, css, whatever) and then proceed as normal. It was definitely not an elegant solution, since you still had to keep any files that only shared a portion of their content up to date with each other, but it worked. This was also about the same timeframe that I split off the mailreader-dao into it's own project under apps.

I doubt that we'd want to take the same approach, but that (at the time) was the best solution I could come up with....which isn't even being used anymore ;) (if that's any hint)

It's going to be interesting to see this progress. I was preparing a reply to an earlier post in the thread, but got pulled away and the context has more or less changed.

I know it might be a bitter pill to swallow, but maybe we should just drop the idea of using mailreader all together. When we go with mailreader, the first thing that comes to mind is 'how can we share portions with Struts' and IMHO that's just not something that we would want to try to support right now. Unless there is a better way??



Sean



--
James Mitchell



Reply via email to