geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Bohn <joeb...@gmail.com>
Subject {DISCUSS] Home for Daytrader sample leveraging Aries
Date Mon, 11 Jan 2010 19:57:41 GMT

Greetings all,

I've been working on a version of the Geronimo Daytrader performance 
benchmark to leverage the enterprise OSGi application programming model. 
  I've been doing this work in my sandbox under Apache Geronimo 
(https://svn.apache.org/repos/asf/geronimo/sandbox/jbohn with the most 
recent changes under daytrader-bp-new).

I'd like to find a more permanent location for this work and get it out 
of my sandbox.

Here is a brief description of what I have thus far in sandbox:
- A restructured Daytrader to support an enterprise OSGi application 
programming model including blueprint, web container, jndi, jpa, etc...
- To further support this programming model I have also reorganized the 
classes, packages, and bundles.
- Simplification and removal of content not yet available in the 
enterprise OSGi application programming model such as EJB support and 
removal of Geronimo specific artifacts such as the plugins.
- Refactoring the way components gain knowledge of each other and 
interact to support blueprint concepts such as reference list and 
reference listeners.
- Support for just two different persistence mechanisms - direct JDBC 
and direct JPA which are currently included in the enterprise OSGi 
application programming model.
- packaging using the Aries Application concepts.

After seeing the recently introduced Apache Aries Blog Sample and its 
assembly for Equinox it encouraged me to do something similar for 
Daytrader so that I could get this running with Apache Aries.  I now 
have a further subset of my sandbox work that could be added as a peer 
to the blog-sample which includes just the JDBC persistence mechanism, 
is hard-wired to Derby, and includes an Equinox assembly to run it. 
This is not currently in any svn because I did it on my local repository 
under aries/trunk/samples with hopes of checking it in there.

I think it is time to get this code to a better home and I'm currently 
thinking that aries/trunk/samples is a good place to start.  For now I 
would check in just the version with JDBC and the equinox assembly. 
However, I would extend this with other capabilities already in my 
sandbox for JPA persistence, the Aries Application packaging, etc... as 
these become available in Aries.

I'm interested if others agree with this approach, if it seems like a 
worthwhile endeavor, and if it is acceptable to include this code under 
aries/trunk/samples.

Here are the current discussion points and concerns as I see them:
1) Duplication of code between Geronimo and Aries if I check it into 
Aries.  However, the code is already split from the JavaEE Daytrader 
version and I doubt it would be possible to fully merge the code base 
and keep both the JavaEE and Aries versions working from a common code 
base without cluttering up the code with environment checks.   So, even 
if we keep it all in Geronimo I think we will still end up with 
multiple code streams.
2) The Equinox assembly version for DayTrader currently doesn't exploit 
anything directly in Apache Geronimo.  It depends upon the pax web 
container among other things.  It is certainly my intention that this 
should run on Geronimo when Geronimo supports osgi rfc 66 among other 
things.  However it seems strange to include this in Geronimo at this 
point in time.
3) Daytrader has always supported running in multiple web containers.  I 
think moving this enterprise OSGi application version of Daytrader to 
Aries further supports this goal and ensures that it won't become too 
tightly coupled to Geronimo.

My apologies for the length of this description.  Please let me know 
your thoughts - especially if you have any concerns with checking this 
version of Daytrader in under 
https://svn.apache.org/repos/asf/incubator/aries/trunk/samples

Thanks,
Joe


Mime
View raw message