Tim McConnell wrote:
Hi Joe, if I put my end-user hat on and I click on any sample/example
link on the Geronimo server's welcome page I would expect it to work out
of the box, or I'm not going to be overly impressed. So if I continue
this train of thought, it seems like any examples on this page should
actually be packaged-with, shipped-with, tested-with, and released-with,
the server. That way they would have to always work, or otherwise the
server couldn't be released. An explicit install action for these
examples probably is probably okay but to depend on an artifact that
must have been released to an external repository at another time isn't
okay, since again as an end-user I expect it to work out of the box, and
as you've just demonstrated they may not (for various reasons). So, why
not mitigate these problems and if the need to be installed, just
install them from say an "examples" subdirectory that is again packaged
with the server ?? No need for an internet connection, no dependency on
an external repo, etc...
I agree. In fact, this is one of the reasons that I was in favor of
moving the samples back into trunk svn ... but I was giving some ground
up by stating that the didn't need to be packaged with the server ...
concerned out image size and such. However, I think you are correct
that samples that are installed directly from the welcome app seem to
imply that they are local and hence should be packaged with the server.
This is another reason why we should remove them from the welcome app
if we don't plan to release and package them together.
I know your probably don't want/need another alternative to your other
devlist thread, but maybe just for the sake of this email I demarcate
between examples and samples. Where "examples" ship with and are
packaged with the server, and can be executed directly from the "Welcome
page". It may be true that this class of examples are so-called simple
examples. But so what, they'll always work because they have to, there
would be no need for a separate release process for them, they could
grow them over time, and we could always be confident of the end-user
impression they'll convey...... And where "samples" are pretty much an
arduous subset of the samples we have today with all their incumbent
problems you've grown to love, and where we might only provide links
from the "Welcome Page" to a Geronimo URL which would then require an
internet connect, a separate release process, an external repo, etc....
I see where you are headed and I partially agree. However, I see two
issues:
1) Packaging examples is great for a development environment but not
very optimal for a production server. Hence, if we grow the server size
with packaged samples our production users would probably have to
manually remove them or build their own server image. While that might
be a good way to encourage users to create custom server images I'm not
sure it would be well received. I think we have already received some
grief for the welcome app itself (esp. since it uses the / context) and
we direct users to remove it if necessary.
2) It's a rather fuzzy distinction between samples and examples. I can
see confusion from users on where to look for function x as well as from
Geronimo developers when wondering how to demonstrate some function.
Is it an example or a sample?
I guess I'm still inclined to just remove the detailed entries and point
the users to the wiki for information on samples and how to go about
getting/installing/playing with them.
Joe Bohn wrote:
The Geronimo welcome page (http://localhost:8080/) has long included
links under a header of Geronimo Examples.
Under this header are the following 3 links:
- Servlet Examples
- JSP Examples
- LDAP Demo
- Additional Samples
I'd like to remove the first 3 links and rename the last link to
simply "Samples" for trunk and branches/2.1 (prior to the 2.1.2
release). The last link takes you to a page on our wiki that lists
doc links for the samples per release ... I think that is more
appropriate.
The first 3 links present another html page from the local server that
contains text similar to this:
This sample has not been installed yet. If this server can connect to
the internet, click here to install and connect to the sample
application. It will take a few minutes to download and install the
sample and then load it.
Those 3 links present some problems (and currently don't work for 2.1
or 2.1.1 that have already been released).
- Clicking the install link attempts to connect to a repository and
initiate a install of the specified sample.
- The repository is not always as desired. For me it defaults to my
local maven2 repo.
- The current component IDs are incorrect. That's easy enough to
change but I suspect there would still be issues (see the next points).
- Even if it linked to the correct repo for the release, there would
still be a period of time after a server release when the samples are
not yet available in the repository.
- The LDAP demo requires some additional setup now because we no
longer include Directory in the initial server image ... hence this
gives a false impression that simply clicking on the link will make
the example functional.
Given these problem and the fact that is has been broken for several
releases. I'd like to remove the specific server example links from
the welcome page before we ship 2.1.2. Any objections?
Joe