I recently added a version of the Geronimo DayTrader sample (now called AriesTrader) into the Aries code stream under trunk/ariestrader-sample. It is a reorganized version of DayTrader that leverages the Aries programming model (currently using a web application bundle, blueprint and jndi modules) with JDBC persistence using Derby. I also have an extension that adds JPA persistence which I can include as that support becomes available. I plan to add some documentation on the structure of the code and solicit feedback so that we can validate that it appropriately demonstrates the Apache Aries programming model.

The sample has been around for a while and mocks up a stock trading application. It has been used in the past to provide performance runs. Included are typical functions for creating and managing accounts that buy and sell stock. There are also primitive functions for running some scenarios not directly related to the primary trade functionality.

The sample is mostly functional. There are just 2 primitives that I know have some issues and there are still some graphics that I have to figure out how to update that mention DayTrader and Geronimo rather than the AriesTrader and Aries.

I've included an equinox assembly (modeled after that provided by the blog sample) that can be used to run AriesTrader which uses the PAX Web implementation. I'll work on creating some tutorials and documentation but here are some initial directions to get it running:


- Install and configure embedded Derby, see here for instructions: http://db.apache.org/derby/papers/DerbyTut/install_software.html#derby

- Checkout and build trunk/ariestrader-sample

- cd ariestrader-sample/assemblies/ariestrader-jdbc-equinox/target

- java org.apache.derby.tools.ij tradeDB.sql

- java -jar osgi-3.5.0.v20090520.jar -console

- Point your web browser at http://localhost:8080/org.apache.aries.ariestrader.modules.ariestrader-web

- select the "Configuration" tab and the "(Re)-populate AriesTrader Database" to seed the database with a default set of users and stock quotes

- select the "Trading & Portfolios" tab to use the mock trade application or the "Primitives" tab to run some of the web primitive tests (PingJSPEL and PingServlet2JNDI are not currently working). You can also run the "Test AriesTrader Scenario" from the "Configuration" tab which will launch a new browser window and step through a trading scenario with each reload of the page.


--
Joe

Reply via email to