Author: jmitchell Date: Sat Jan 15 11:41:57 2005 New Revision: 125295 URL: http://svn.apache.org/viewcvs?view=rev&rev=125295 Log: Initial commit of README.txt Added: struts/apps/trunk/README.txt (contents, props changed)
Added: struts/apps/trunk/README.txt Url: http://svn.apache.org/viewcvs/struts/apps/trunk/README.txt?view=auto&rev=125295 ============================================================================== --- (empty file) +++ struts/apps/trunk/README.txt Sat Jan 15 11:41:57 2005 @@ -0,0 +1,162 @@ +This file lays out the plan for and progress status of the +various mailreader sample applications. + + +To build all applications under "apps": + +maven apps:build-all + + + +The plan (to do): +---------------- + - [] Remove the mailreader demo from commons-chain + ensure that any enhanced functionality makes it's + way into the "shared" app + + - [] Identify and merge all mailreader apps to the below structure + + - [] Identify a clean way to get the generated .tld files into the apps + + - [] Put together a global build target to dist all of struts + (this means all related projects under "struts/trunk" + + - [] Modify core/trunk/build.xml to not build webapps + + - [] Modify the apps build to allow for a "with source" + (war:war-with-source) target. This should be obvious what this does. + + - [] Modify apps/trunk/project.xml extend core/trunk/project.xml + (I don't know how other people do this, but I always grab the whole repos) + + - [] Figure out the best way to handle getting documentation/taglib tld + built and distributed amoung the various artifacts (in "apps" and others) + + + +Issues: +------ + - [done] The blank app would be the only app that needs *fewer* files than + "shared". Not sure how we deal with this. Perhaps just leave + it as one that does not generate from a parent. + (this is not problem, changed reactor to look for "mailreader-*/project.xml" + + - [] Why does this still say "jakarta"? + <logo>http://struts.apache.org/images/jakarta-logo.gif</logo> + ^^^^^^^ + + +Strategy (overview): +------------------- +The strategy for building "apps" here is that Maven will build +the variations of mailreader apps by repeating a process that, +for each mailreader app: + +a) copies the "shared" base file structure and files + to the target dir +b) copies **/*.* (from one of the apps) over top of that +c) generates any docs/javadocs/etc and wars the artifact + (would also run the full test suite....yes I'm volunteering ;) + + +This process would repeat for each "one-off mailreader"....like so: + + -- default -- +apps/trunk/mailreader/blank +apps/trunk/mailreader/shared +apps/trunk/mailreader/el +apps/trunk/mailreader/shale +apps/trunk/mailreader/jericho +apps/trunk/mailreader/resources (impl using commons-resources) +apps/trunk/mailreader/chain (this demonstrates chain for a wizard) +apps/trunk/mailreader/i18n (using commons-i18n) +apps/trunk/mailreader/tiles (this is not the tiles doc app) + + -- optional -- +apps/trunk/mailreader/faces (the integration library) +apps/trunk/mailreader/j2ee (mostly xdoclet generated ejb 3.0 + against HSSQLDB) +apps/trunk/mailreader/spring +apps/trunk/mailreader/hibernate +apps/trunk/mailreader/spring-hibernate (it's a beautiful thing) +apps/trunk/mailreader/resources-hibernate (HSSQLDB with Hibernate) +apps/trunk/mailreader/resources-iBatis (HSSQLDB with iBatis) +apps/trunk/mailreader/resources-jdbc (HSSQLDB with JDBC) + + +There's a main project.xml in apps/trunk/ +Each mailreader app project.xml extends that and overrides only what it +needs to for that specific app. This is more or less why Maven was +invented in the first place (from what I've read). + +This way we don't have to have full blown webapp structures that +duplicate 95% of the code. Only the files that are actually different +than the "shared" will exist in these "one off"'s....what do we call +these anyway? "Mailreader app demo"? (MAD) + +So, in the end, if you were to add some new button or page to +the shared app, they would all inherit it. And if something changes +that breaks any one of the "MAD"s (LOL), the extensive test coverage +would catch that....yes I'm volunteering again ;) + +What are the current targets (other than stock maven ones) + +mailreader:template - produces the basic folders and project.xml/maven.xml that + would allow for an alternate implementation of the + mailreader application + + + +Details: +------- + [-] apps + ' [-] trunk + ' ' maven.xml (reactor!!!) + ' ' project.xml (parent config) + ' ' + ' ' [-] blank + ' ' maven.xml + ' ' project.xml (parent config) + ' ' + ' ' [-] src + ' ' [+] java (nothing in here right now) + ' ' [+] resources + ' ' [-] webapp + ' ' [+] WEB-INF + ' ' [-] test + ' ' + ' ' + ' [-] mailreader + ' ' [-] src + ' ' [+] java + ' ' [+] resources + ' ' [+] test + ' ' [+] webapp + ' ' + ' [-] examples + ' ' (exercise, upload, validator) + ' ' (i feel this should be renamed to 'modules') + ' ' [-] src + ' ' [+] java + ' ' [+] resources + ' ' [+] test + ' ' [+] webapp + ' ' + ' [-] test + ' ' (really need to get this back in order + ' ' or figure out a new strategy..more on + ' ' this later) + ' ' [-] src + ' ' [+] java + ' ' [+] resources + ' ' [+] test + ' ' [+] webapp + ' ' + ' [-] tile-documentation + ' ' (this should probably go to tiles/trunk) + ' ' [-] src + ' ' [+] java + ' ' [+] resources + ' ' [+] test + ' ' [+] webapp + --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]