On 1/19/07, Jason Dillon <[EMAIL PROTECTED]> wrote:
Why are there reporting elements in the architype (and also in the first sample), which are not at the top-level, but are in calculator- stateless-pojo?
The requirement is for only 2 reporting elements, javadoc and jxr. A user should be able to download each sample separately, generate javadoc and source xrefs, and install the samples with those gen'ed files. The javadoc and jxr plugins can be configured with <aggregate> options. Executing the reporting at the top level will aggregate the reports at that level, not for the individual sample. But the user will be downloading the individual sample source package (eg: calculator-stateless-pojo) Also, the javadoc and jxr reports should not be inherited by every child module for they will also generate their own files. So we use <inherited>false</inherited> Now only an aggregated javadoc and source xref will be gen'ed at the top of each sample. This will be pulled into the war module and deployed to Geronimo server. I don't know how good a job I'm doing explaining this.
Why does this project not inherit from genesis project-config?
The project does not inherit from genesis' project-config because I could not prevent it from inheriting all the reports. I tried using <excludeDefaults> for the maven-project-info-plugin and that didn't work too.
Why is the geronimo-maven-plugin configured here?
See UseCase Scenario 1, Flow B. The user should be able to build the sample source package and deploy it in one go. In this flow, we are "pushing" the Geronimo binary on the user.
And why on earth are there sources (CalculatorServlet) checked in with: <snip> /* * Copyright 2002 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ </snip> :-(
Oops. Thanks for catching it. The wrong file was checked in. It has since been corrected. . Completed: At revision: 498055 Thanx again.
And you should use the released dependencies you are referencing in he top-level pom, better yet depend on some part of Geronimo to pick those up transitively so don't have to work about keeping the versions in sync with a Geronimo version. Right now though this won't build, can probably fix by inheriting from genesis project-config to pick the right repository configurations, though these are old dep versions anyways... and you probably don't want to make them dependencies of all modules of the project, which is what you have setup right now. * * * I think its good to have some real samples to help folks get started, but I wish that a little more attention to some of these details was given. --jason On Jan 19, 2007, at 9:22 AM, Prasad Kashyap wrote: > Encouraged by your kind words of appreciation for the Testsuite > framework, I put together a similar Samples Framework. > > http://svn.apache.org/viewvc/geronimo/samples/ > > UseCase Scenario 1 > ------------------------------- > Actor: Geronimo user, JEE5 Developer. > > Requirements: > * Actor wants to learn the new features of JEE5 by looking at > sample code > * He wants to play with sample code. > * He wants to learn how to develop applications on Geronimo. > * He may want to use the sample code as a template for his own > application. > > Flow A (install downloaded sample binary) > * Actor downloads a Geronimo server binary and unpacks it. > * He then downloads a sample binary. > * He starts Geronimo server. > * He then deploys the sample artifact into running server. > * He goes to the sample app's home page (context-root). > > Flow B: (build sample source and install) > * Actor downloads a sample source package. > * He installs Maven if he doesn't have it already. > * He builds the sample project using maven. > * Sample project automatically downloads the latest Geronimo > server, starts it, and deploys the newly built sample. > * It fires up a browser and brings up the sample home page (not > implemented yet). > > See the following links in Firefox only ! > Here is a page that gives a user instructions on working with samples. > Every sample download will also have a customized & relevant page like > this, say as a README.html > http://people.apache.org/~prasad/samples/index.html > > Here is a sample sample page. Notice the javadoc and source tabs in > the top right corner of the page. > http://people.apache.org/~prasad/samples/sample.html > > > UseCase Scenario 2 > ------------------------------- > Actor: Geronimo Developer, JEE5 Spec Implementor > > Interactions: Document Writer. > > Requirements: > * Actor wants to create sample projects quickly without having to > deal too much with Maven. > > Flow: > * Actor executes a sample-archetype-plugin. > * It creates a mvn project which will act as a template. > * He only has to write JEE5 code for the sample application. > * He then works with Document Writer to write the sample document. > > > Cheers > Prasad.
