Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 344640

Summary: Getting started documentation changes from downloaded tutorial to fresh web application
Product: [RT] Virgo Reporter: Rick Herrick <rherrick>
Component: documentationAssignee: Project Inbox <virgo-inbox>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: glyn.normington, rherrick
Version: 2.3.0.RELEASEKeywords: helpwanted
Target Milestone: 2.4.0.RELEASEFlags: glyn.normington: documentation+
Hardware: All   
OS: All   
Whiteboard:

Description Rick Herrick CLA 2011-05-03 16:58:29 EDT
Build Identifier: STS Build 201103161000

The transition from chapter 3 to chapter 4 is very confusing. Chapter 3 has you import and run the full Green Pages app. At the completion of that section, you'll have a fully implemented and bundled version for creating the greenpages PAR.

Then Chapter 4 doesn't have you clear out any of the apps or anything, but suddenly has you creating a controller class that's already there from the steps in Chapter 3. Also, the steps in Chapter 4 will fail because hauling the existing greenpages.web-solution into the server will fail because of unsatisfied dependencies:

[2011-05-03 15:47:19.377]  TCP Connection(2)-127.0.0.1 <DE0002E> Installation of bundle 'greenpages.web' version '2.3.0' failed. org.eclipse.virgo.kernel.osgi.framework.UnableToSatisfyBundleDependenciesException: Unable to satisfy dependencies of bundle 'greenpages.web' at version '2.3.0': Cannot resolve: greenpages.web
    Resolver report:
        An Import-Package could not be resolved. Caused by missing constraint in bundle <greenpages.web_2.3.0>
             constraint: <Import-Package: greenpages; version="[2.3.0,2.4.0)">

I'm pretty certain it's because the manifest specifies greenpages.*;version="[2.3, 2.4)" and that doesn't get resolved. Note that the chapter 4 tutorial specifically shows a MANIFEST.MF that doesn't have greenpages specified as a dependency:

http://www.eclipse.org/virgo/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s04.html

Import-Package: org.eclipse.virgo.web.dm;version="[2.0.0, 3.0.0)
 ",freemarker.cache;version="[2.3.15,2.3.15]",javax.servlet.jsp.jstl.c
 ore;version="[1.1.2,1.2.0)",javax.sql,org.apache.commons.dbcp,org.spr
 ingframework.core.io,org.springframework.stereotype,org.springframewo
 rk.web.bind.annotation,org.springframework.web.context,org.springfram
 ework.web.servlet

Reproducible: Always

Steps to Reproduce:
1. Follow the steps in chapter 3.
2. Follow the steps in chapter 4.
3. Try to start the web app and watch it fail.
Comment 1 Rick Herrick CLA 2011-05-03 17:13:50 EDT
I just realized that the problem is that the documentation goes from having projects in the "solution" folder to the "start" folder and that the errors come from that. My suggestion would just be to modify the documentation to have users remove the projects from the "solution" folder explicitly and call more attention to the fact that the projects in chapter 4 should come from the "start" folder.
Comment 2 Glyn Normington CLA 2011-05-04 05:58:53 EDT
Thanks for pointing out this enhancement. We would be grateful if you or anyone else interested could send in a patch. The so-called "getting started guide" is in the git repo git://git.eclipse.org/gitroot/virgo/org.eclipse.virgo.documentation.git.
Comment 3 Glyn Normington CLA 2011-07-25 06:17:02 EDT
The getting started documentation has been totally refactored under bug 349694. The previous format was very difficult to maintain and was constantly getting out of step with reality.

We have moved the material which really should be in the User and Programmer Guides into those documents and we have turned the remaining material into a GreenPages Guide which will appear in the next release (2.4) of the GreenPages sample.

This will address the concerns raised in this bug, although perhaps not in the way anticipated!