| Title: AriesTrader |
| |
| <a name="AriesTrader-TheAriesTraderSample"></a> |
| # The AriesTrader Sample |
| |
| |
| <a name="AriesTrader-Prereqs"></a> |
| ### Prereqs |
| <br> |
| |
| - - - |
| **Note:** |
| |
| These instructions are for the 1.0.0 release of Aries. |
| Instructions for older releases can be found [here](archiveinstructions.html) |
| . In the 0.2-incubating release the AriesTrader sample was changed such |
| that it is no longer required for you to install Derby independently. The |
| Derby version included in the sample is fully leveraged internally in the |
| sample and therefore no additional Derby installation is required. |
| However, there are steps required to initialize the Database from within |
| the sample itself (see instructions below). |
| |
| - - - |
| |
| <a name="AriesTrader-CreatingtheOSGiplatform(equinox-test-harness)forAriesTrader"></a> |
| ### Creating the OSGi platform (equinox-test-harness) for AriesTrader |
| Download and unzip the source zip for the [latest release](aries:downloads.html) |
| of Aries Samples and build the equinox-test-harness module under |
| ariestrader: |
| |
| cd samples-1.0.0-incubating/ariestrader/assemblies/equinox-test-harness |
| mvn install |
| |
| This procedure will pull in the binaries from the latest release and its |
| dependencies. |
| |
| <a name="AriesTrader-AlternativebuildusingApacheAriestrunk."></a> |
| ### Alternative build using Apache Aries trunk. |
| As an alternative to using the released version you can also choose to work |
| with the latest, unreleased code. This will require the use of subversion |
| to checkout the code followed by building the entire Apache Aries project. |
| Directions are provided here: [Building Aries instructions](aries:buildingaries.html) |
| . |
| |
| |
| <a name="AriesTrader-StartingtheEquinoxTestHarnesstoruntheAriesTradersample"></a> |
| ### Starting the Equinox Test Harness to run the AriesTrader sample |
| AriesTrader needs a test harness to run in. For this purpose we are using |
| an Equinox assembly that pulls in all of the necessary dependencies. |
| |
| |
| The first task is to start the Apache Aries modules in an OSGi framework |
| using the Eclipse Equinox test harness |
| |
| cd samples-1.0.0-incubating/ariestrader/assemblies/equinox-test-harness/target |
| java -jar osgi-3.5.0.v20090520.jar -console |
| |
| The OSGi console should start up, the 'ss' command should show the active |
| bundles but the AriesTrader application is not yet installed (with the |
| exception of the ariestrader derby datasource which is started with the |
| test harness for convenience). |
| |
| <a name="AriesTrader-InstallingAriesTraderintheEquinoxTestHarness"></a> |
| ### Installing AriesTrader in the Equinox Test Harness |
| To install the AriesTrader application simply copy the eba for AriesTrader |
| into the target/load directory, you will need to create this directory first. |
| For convenience the AriesTraders EBAs are |
| copied into the target directory as part of creating the OSGi Equinox test |
| harness. |
| |
| When using the "JDBC" only AriesTrader configuration which supports only |
| jdbc persistence: |
| |
| cp org.apache.aries.samples.ariestrader.jdbc-*.eba load/ |
| |
| |
| When using the "All" AriesTrader configuration which supports all currently |
| available persistence modes: |
| |
| cp org.apache.aries.samples.ariestrader.all-*.eba load/ |
| |
| |
| Now the 'ss' command should show all of the AriesTrader bundles in state |
| 'ACTIVE'. |
| |
| If you subsequently delete org.apache.aries.samples.ariestrader.jdbc-*.eba |
| or org.apache.aries.samples.ariestrader.all-*.eba from the target/load |
| directory the application will be uninstalled. |
| |
| |
| <a name="AriesTrader-AccessingandusingtheAriesTradersample"></a> |
| ### Accessing and using the AriesTrader sample |
| Point your browser at [http://localhost:8080/ariestrader/](http://localhost:8080/ariestrader/) |
| |
| Select the "Configuration" tab and the "Configure AriesTrader run-time |
| parameters" choice. Then select from among the available runtime modes |
| (defauls to JDBC). Be sure to click "update config" to save your |
| selection. |
| |
| At the moment the following persistence modes are available when using the |
| "all" EBA: |
| * JDBC persistence |
| * JPA application managed entity manager persistence |
| * JPA container managed entity managers using declarative transaction |
| support |
| |
| By default, the sample starts with JDBC persistence. To select another |
| persistence mechanism see the directions under "Accessing and using the |
| AriesTrader sample. |
| |
| After selecting the persistence mode you must create the AriesTrader |
| Database tables and indexs. Select the "Configuration" tab and the |
| "(Re)-create AriesTrader Tables and Indexes". |
| |
| Next, you must seed the database with test content. Once again go to the |
| "Configuration" tab but this time select "(Re)-populate AriesTrader |
| Database" from the available choices to seed the database with a default |
| set of users and stock quotes. You will see a number of quotes (default is |
| 400) and users (default is 200) created. |
| |
| Select the "Trading & Portfolios" tab to use the mock trade application or |
| the "Primitives" tab to run some of the web primitive tests (PingJSPEL is |
| 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. |
| |
| <a name="AriesTrader-AbouttheAriesTraderSample"></a> |
| ### About the AriesTrader Sample |
| |
| The AriesTrader sample is a modified version of the Apache Geronimo |
| DayTrader sample. It has been somewhat simplified and reorganized to |
| support the Apache Aries programming model. |
| |
| The AriesTrader sample bundles are organized like this: |
| |
| ![at2](ariesTraderOverview2.png) |