On Oct 6, 2006, at 10:37 AM, Joe Bohn wrote:
I couldn't quite decide what to call it either which is why I'm
using the term "geronimo-framework" for the assembly. But I'm
certainly open to other opinions. I don't envision this being
something that the casual user would pick up directly. I image
that we would still ship the full j2ee assembly and possibly even
the minimal assembly. Micro-G would be available for more
sophisticated users that wanted to build a custom image and for
vendors who might pick up Micro-G, build their own custom image,
and then add their own software for redistribution/sale.
Framework makes sense as I think that is where people wanted to go
with Geronimo based on my recollection from many e-mails and
conversations. I'll pop in my 2c here given Joe's comments above.
What makes sense in my twisted mind is that Micro-G provides the core
wiring framework to build a server (as joe indicated). From that we
install plugins to assemble a server. The question then becomes how
would a user consume this? and perhaps we need to define the groups
of users that Geronimo would appeal to. Here is my quick hit list:
J2EE developers - these folks are interested in a server that they
can use to develop and deploy J2EE applications. They are not really
concerned about the plumbing of the server but are more interested in
consuming ready made things like Eclipse, Geronimo, etc. to build an
application.
Application Developer - May not want all the gizmos of J2EE / JEE but
is definitely interested in things like Servlets and Spring. They
would like a server that is sized for their needs and includes the
components they need for their applications to run. People that use
Tomcat + other stuff fall into this category.
System Developers - these folks are more in tune with the server and
its various pieces. They might be interested in the Geronimo Tx
Manager or other piece parts of the server. They are willing to
write GBeans and other Geronimo specific artifacts to accomplish
their goals. They probably want the ability to create custom server
configurations.
ISV's - Pretty much the same as System Developers but might have
targetted deployment environments like Kiosks or embedded devices.
They want to build and distribute Applications and will use Geronimo
as their core runtime infrastructure. They are probably more
interested in stability than innovation as their distributing
applications.
There are probably lots more user types but I think the above covers
the spectrum pretty broadly. With that said, how do we meet their
needs?
If I were in their shoes I would like to be able download either pre-
built server configurations (J2EE certified) or build a custom
assembly. In order to allow both I wonder if it makes sense to
introduce the concept of server templates. Here is what I mean:
Since every assembly we make now is hand turned we could make the
configuration simpler so a user could express their intended server
configuration through an XML file and we provide a generic assembler
that would read this template, resolve dependencies and spit out a
binary server config that could be distributed (downloaded as a
server). The template would allow for command line building of the
server such that a user would not need to interactively build it
(GShell ?)
This means that there would be a distribution of Geronimo that
included micro-G along with all the gorp we normally build. The gorp
would be in a repository format (like plugins or the same) so that a
user could use templates to build a server without being network
connected if they so chose). So we would make the following
available for distribution:
Geronimo J(2)EE certified (1.4 / 5.0, etc.) Tomcat / Jetty
Minimal Tomcat / Jetty
Micro-G (all components to build yur own custom server).
So in effect, the J(2)EE and Minimal servers would simply be
templates that happen to build server assemblies. Of these, the
Geronimo team certifies the J2EE one.
Anyway, should I put these ideas on the cwiki for discussion /
clarification? It sounds that this is the general direction we're
headed in and is rather unique. If we agree in concept it would be
good to get our web page updated to reflect these goals (vision) of
the project so people can see where we're going and get involved if
they're interested.
thoughts?
The thinking above is really a comglomeration of lots of discussion
on the list.
Matt Hogstrom
[EMAIL PROTECTED]