geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jb...@apache.org
Subject svn commit: r775187 [8/10] - in /geronimo/daytrader/trunk: ./ daytrader-webonly/ daytrader-webonly/src/ daytrader-webonly/src/main/ daytrader-webonly/src/main/java/ daytrader-webonly/src/main/java/org/ daytrader-webonly/src/main/java/org/apache/ daytra...
Date Fri, 15 May 2009 15:17:45 GMT
Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html Fri May 15 15:17:36 2009
@@ -0,0 +1,196 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><!-- Sample HTML file -->
+
+<HTML>
+<HEAD>
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Frequently Asked Questions</TITLE>
+</HEAD>
+
+<BODY BGCOLOR="#FFFFFF">
+<HR>
+<TABLE width="100%">
+  <TBODY>
+    <TR>
+      <TD>
+      <H3><FONT face="Times New Roman">Frequently Asked Questions</FONT></H3>
+      </TD>
+      <TD align="right"></TD>
+    </TR>
+  </TBODY>
+</TABLE>
+
+<P>The Apache Software Foundation<SUP>&reg;</SUP> DayTrader Performance Benchmark Sample
+provides a suite of workloads for characterizing performance of J2EE 1.4 Application 
+Servers. The workloads consist of an end-to-end Web application and a full set of Web
+primitives. The applications are a collection of Java<SUP>TM</SUP> classes, Java servlets,
+Java ServerPages<SUP>TM</SUP> (JSP<SUP>TM</SUP>) files and Enterprise JavaBeans<SUP>TM</SUP> (EJB<SUP>TM</SUP>) built to open Java 2 Platform, Enterprise Edition (J2EE<SUP>TM</SUP>) APIs. Together, the Trade application and Web primitives provide versatile and portable test cases that are designed to measure aspects
+of scalability and performance.</P><HR>
+
+<P><FONT size="+1" color="#000099"><B>Application Design</B></FONT></P>
+
+<P><B>What is DayTrader?</B></P>
+<P>DayTrader is an end-to-end Web application that is modeled after an on-line stock brokerage.
+DayTrader leverages J2EE components such as servlets, JSP files, enterprise beans, 
+message-driven beans (MDBs) and Java database connectivity (JDBC<SUP>TM</SUP>) to
+provide a set of user services such as login/logout, stock quotes, buy,
+sell, account details, and so on through  standards-based HTTP and Web services protocols.</P>
+
+<P><B>What are Web Primitives?</B></P>
+<P>The Web primitives leverage the DayTrader infrastructure to test specific features
+of the Application Servers implementing the J2EE 1.4 programming model. A description of each of the Web 
+primitives is provided on the <A href="../web_prmtv.html">main web primitive 
+page</A>.</P>
+
+
+<P><B>What software is required to run DayTrader?</B></P>
+<UL>
+    <LI>Any J2EE 1.4 Compliant Application Server</LI>
+    <LI>A database that has a suitable JDBC driver for both XA and non-XA connectivity.</LI>
+</UL>
+
+<P><B>What are the most common configuration scenarios?</B><UL>
+    <LI><B><B>Single server with a remote database</B></B> - The DayTrader application runs on a stand alone WebSphere Application Server instance. The required database software and the associated Trade database are located on a different system from the Application Server. The Application Server system must have the necessary database client software to connect to the remote database. <B></B></LI>
+	<LI><B>Single server with a local database</B> - Same as the previous scenario; however, the required database software and the 
+	associated DayTrader database are located on the same system as the Application Server.</LI>
+</UL>
+
+
+<HR>
+<P><FONT size="+1" color="#000099"><FONT color="#000099"><B>Run-time Configuration</B></FONT></FONT></P>
+
+<P><B>What does the ResetDayTrader link do?</B></P>
+<P>The ResetDayTrader link on the configuration page must be clicked between DayTrader runs. 
+This link sets the database to a consistent size by removing all the newly registered users created during 
+a DayTrader run. The reset also sets all outstanding orders to a consistent state. Resetting the database 
+to a consistent size ensures repeatable throughput on subsequent DayTrader runs. </P>
+
+<P><B>How are the DayTrader configuration parameters modified?</B></P>
+<P>The Trade <A HREF="../config">configuration page</A> provides a dynamic mechanism to set
+the run-time configuration for a DayTrader run. These settings control the application
+run-time characteristics such as the run-time mode, the order processing mode, and other run-time 
+variations supported in DayTrader. All settings are reset to defaults when the DayTrader application 
+server is restarted.</P>
+
+<P><B>Can you make configuration changes permanent?</B></P>
+<P>Yes. Normally, Trade configuration parameters return to defaults whenever the Trade application 
+server is restarted. Settings can be made permanent by setting the configuration values in the 
+servlet init parameters of the TradeApp servlet and the TradeScenario servlet. Modify the 
+servlet init parameters in the web.xml file of the Trade Web application to change these parameters.</P>
+
+<P><B>What are the run-time modes?</B></P>
+<P>DayTrader provides two server implementations of the emulated DayTrader brokerage services.</P>
+<UL>
+    <LI><B>EJB</B> - Database access uses EJB 2.1 technology to drive transactional trading operations.</LI>
+    <LI><B>Direct</B> - This mode uses database and messaging access through direct JDBC and JMS code.</LI>
+</UL>
+
+<P><B>What are the order processing modes?</B></P>
+<P>DayTrader provides an asynchronous order processing mode through messaging with MDBs. The order 
+processing mode determines the mode for completing stock purchase and sell operations. Synchronous 
+mode completes the order immediately. Asynchronous mode uses MDB and JMS to queue the order to a 
+TradeBroker agent to complete the order. Asychronous_2-Phase performs a two-phase commit over the EJB 
+database and messaging transactions.</P>
+<UL>   
+	<LI><B>Synchronous</B> - Orders are completed immediately by the DayTrader session enterprise bean and entity enterprise beans.</LI>
+	<LI><B>Asynchronous 2-phase</B> - Orders are queued to the TradeBrokerMDB for asynchronous processing.</LI>
+</UL>
+
+<P><B>What are the access modes?</B></P>
+<P>DayTrader provides multiple access modes to the server-side brokerage services.</P>
+<UL>
+	
+	<LI><B>Standard</B> - Servlets access the Trade enterprise beans through the standard RMI protocol</LI>   
+	<LI><B>WebServices</B> - Servlets access DayTrader services through the Web services implementation in 
+    the System Under Test (SUT). Each trading service is available as a standard Web service through the SOAP 
+    Remote Procedure Call (RPC) protocol. Because DayTrader is wrapped to provide SOAP services, each DayTrader
+    operation (login, quote, buy, and son on) is available as a SOAP service.</LI>
+	
+</UL>
+
+<P><B>What is the Primitive Iteration setting?</B></P>
+<P>By default, the DayTrader primitives run one operation per Web request. Setting this value alters
+the number of operations performed per client request. This is useful for reducing the amount of work
+that is performed by the Web Container and for stressing other components within the application server.
+
+</P>
+<HR>
+<P><FONT size="+1" color="#000099"><FONT color="#000099"><B>Benchmarking</B></FONT></FONT></P>
+
+<P><B>What is the TradeScenario servlet?</B></P>
+<P>The TradeScenario servlet provides a simple mechanism to drive the DayTrader application.
+The Trade database is initially populated with a set of fictitious users with names ranging 
+from <CODE>uid:0</CODE> to <CODE>uid:49</CODE> and a set of stocks ranging from <CODE>s:0</CODE> to <CODE>s:99</CODE>. 
+The TradeScenario servlet emulates a population of Web users by generating a specific DayTrader operation for
+a randomly chosen user on each access to the URL. To run the TradeScenario servlet  use the single 
+<A HREF="../scenario">TradeScenario URL</A> (http://<I>hostname</I>/daytrader/scenario) with a load generation tool.</P>
+
+<P>Although TradeScenario servlet provides a simple mechanism for driving the DayTrader application, 
+there is a drawback to using this method versus using a series of load generation scripts 
+that drive the operations directly. This servlet consumes processing resources on the server
+to manage incoming clients and dispatch these simple client requests to complex Trade actions. This
+action artificially decreases server throughput because the server is emulating tasks that are normally
+ performed by a standard client or a more complex load generation tool.</P>
+
+<P><B>What is the typical procedure for collecting performance measurements with DayTrader?</B>
+<P>When DayTrader is successfully installed on the application server and the supporting
+database is populated, you can us the DayTrader application to collect performance measurements.
+The following list provides the typical process for gathering performance measurements with DayTrader.</P>
+<OL>
+    <LI>Select the DayTrader run-time configuration parameters from the <A HREF="../config">configuration 
+    page</A> (EJB, synchronous, and so on).</LI>
+    <LI>Reset the DayTrader run-time using the <A HREF="../config?action=resetTrade">Reset DayTrader link</A>.</LI>
+    <LI>Warm-up the application server JVM<SUP>TM</SUP> by applying load for a short period of time. The load generation tool  
+    may access the TradeScenario servlet, 
+    web primitives, or use custom scripts to drive the various operations of TradeApp servlet. To warm-up the
+     JVM, each code path within DayTrader must be processed enough times to esnure that the JIT compiler
+     has compiled and optimzed the application and server paths; generally, about 3000 iterations should do the trick.
+     Remember that the same code path is not necessarily run on each request unless primitives are being 
+    run. Therefore, perform an adequate number of requests to stabilize the performance results.</LI>
+    <LI>Stop the load generation tool.</LI>
+    <LI>Reset the Trade run-time again</LI>
+    <LI>Restart the load generation tool and record measurements after the driver completes the requests.</LI>
+    <LI>Repeat steps 5 and 6 to obtain additional measurements.</LI>    
+</OL>
+
+<P><B>Where did DayTrader come from?</B>
+<P>DayTrader was originally an application designed by IBM to test their commercial Application Server.
+The application was designed around common development patterns as well as to use the majority of the 
+J2EE programming model.  The original author was Stan Cox where he developed Trade (the original name) 
+for J2EE 1.3.  Since then Stan has evolved Trade and several other individuals have contributed to the project.
+Christopher Blythe has been instrumental in stabilizing the long running capability of the benchmark and Andrew
+Spyker introduced the Application Clients.  The Application Clients (Streamer and WSAppClient) provide remote
+capability to validate remote J2EE functionality and database consistency as well as provide a remote 
+WebServices client.  Matt Hogstrom has used Trade extensively for performance analysis and brought Trade 
+to the Apache Software Foundation Geronimo Project.  He has removed (hopefully) all WebSphere specific items
+in the application and introduced additional functionality for gathering server compliance information 
+and low-level diagnostic information.</P>
+
+<P><B>Where is it going?</B>
+<P>Version 1.1 of DayTrader represents the first presentation of the application as an Open Source
+version for performance and benchmarking.  Currently it is focused on J2EE 1.4 but needs to be upgraded to 
+J2EE 1.5.  Also, as there is a large number of developers that are not interested in the full J2EE stack,
+DayTrader needs to be updated to be modular such that only the interesting pieces need to be deployed.</P>
+<P>Also, DayTrader needs to incorporate some additional technology such as Spring and Hibernate for 
+performance testing such that comparisons can be made against competing technologies.</P>
+
+
+<HR>
+
+</BODY>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeFAQ.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html Fri May 15 15:17:36 2009
@@ -0,0 +1,22 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<HTML>
+<TITLE>DayTrader Version</TITLE>
+<BODY>
+DayTrader Performance Benchmark Sample for Tomcat 6
+</BODY>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/docs/tradeversion.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp Fri May 15 15:17:36 2009
@@ -0,0 +1,125 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<%@ page import="java.io.*" %>
+
+
+<TABLE width="740">
+  <TBODY>
+    <TR>
+			<TD bgcolor="#c93333" align="left" width="640" height="10"><B><FONT
+				color="#ffffff">DayTrader Error</FONT></B></TD>
+			<TD align="center" bgcolor="#000000" width="100" height="10"><FONT
+				color="#ffffff"><B>DayTrader</B></FONT></TD>
+        </TR>
+
+</TABLE>
+<DIV align="left"></DIV>
+<TABLE width="740">
+  <TBODY>
+    <TR>
+            <TD width="3"></TD>
+            <TD>
+      <HR>
+      </TD>
+            <TD width="3"></TD>
+        </TR>
+    <TR>
+            <TD bgcolor="#e7e4e7" rowspan="4" width="3"></TD>
+            <TD><B><FONT color="#000000">An Error has occured during DayTrader processing</FONT><FONT size="-2">.</FONT></B><BR>
+            The stack trace detailing the error follows.
+            <p><b>Please consult the application server error logs for further details.</b></p>
+            </TD>
+            <TD bgcolor="#e7e4e7" width="3" rowspan="4"></TD>
+        </TR>
+    <TR>
+            <TD><FONT size="-1">
+
+<%
+  String message = null;
+  int status_code = -1;
+  String exception_info = null;
+  String url = null;
+
+  try {
+    Exception theException = null;
+    Integer status = null;
+
+    //these attribute names are specified by Servlet 2.2
+    message = (String) request.getAttribute("javax.servlet.error.message");
+    status = ((Integer) request.getAttribute("javax.servlet.error.status_code"));
+    theException = (Exception) request.getAttribute("javax.servlet.error.exception");
+    url = (String) request.getAttribute("javax.servlet.error.request_uri");
+
+    // convert the stack trace to a string
+    StringWriter sw = new StringWriter();
+    PrintWriter pw = new PrintWriter(sw);
+    theException.printStackTrace(pw);
+    pw.flush();
+    pw.close();
+
+    if (message == null) {
+      message = "not available";
+    }
+
+    if (status == null) {
+      status_code = -1;             
+    }
+    else {
+      status_code = status.intValue();
+    }
+    if (theException == null) {
+      exception_info = "not available";
+    }
+    else {
+      exception_info = theException.toString();
+      exception_info = exception_info + "<br>" + sw.toString();
+      sw.close();
+    }
+  } catch (Exception e) {
+     e.printStackTrace();
+  }
+
+  out.println("<br><br><b>Processing request:</b>" +  url);      
+  out.println("<br><b>StatusCode:</b> " +  status_code);
+  out.println("<br><b>Message:</b>" + message);
+  out.println("<br><b>Exception:</b>" + exception_info);
+
+%>
+</FONT><FONT size="-1">
+     </FONT></TD>
+        </TR>
+    <TR>
+            <TD align="left"></TD>
+        </TR>
+    <TR>
+            <TD>
+      <HR>
+      </TD>
+        </TR>
+  </TBODY>
+</TABLE>
+<TABLE>
+  <TBODY>
+    <TR>
+			<TD bgcolor="#c93333" align="left" width="640" height="10"><B><FONT
+				color="#ffffff">DayTrader Error</FONT></B></TD>
+			<TD align="center" bgcolor="#000000" width="100" height="10"><FONT
+				color="#ffffff"><B>DayTrader</B></FONT></TD>
+        </TR>
+    </TBODY>
+</TABLE>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/error.jsp
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html Fri May 15 15:17:36 2009
@@ -0,0 +1,41 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<html>
+<head>
+<title>daytrader2_matts_mods</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</head>
+<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
+<!-- ImageReady Slices (daytrader2_matts_mods.psd - Slices: 00, about, bottomRedBar, configuration, copyRight, dayTraderLogo.gif, daytrader2_matts_mods_14, faq, home, primitives, reports, topRedBar, tradingAndPortfolios) -->
+<table id="Table_01" width="785" height="58" border="0" cellpadding="0" cellspacing="0">
+	<tr>
+		<td>
+			<table id="footer" width="784" height="58" border="0" cellpadding="0" cellspacing="0">
+				<tr>
+					<td>
+						<img src="images/bottomRedBar.gif" width="784" height="5" alt=""></td>
+				</tr>
+				<tr>
+					<td>
+						<img src="images/copyRight.gif" width="784" height="53" alt=""></td>
+				</tr>
+			</table></td>
+	</tr>
+</table>
+<!-- End ImageReady Slices -->
+</body>
+</html>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/footer.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html Fri May 15 15:17:36 2009
@@ -0,0 +1,103 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<html>
+<head>
+<title>DayTrader Header</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+</head>
+<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
+<!-- ImageReady Slices (daytrader2_matts_mods.psd - Slices: 00, about, bottomRedBar, configuration, copyRight, dayTraderLogo.gif, daytrader2_matts_mods_14, faq, home, primitives, reports, topRedBar, tradingAndPortfolios) -->
+<table id="Table_01" width="785" height="90" border="0" cellpadding="0" cellspacing="0">
+	<tr>
+		<td width="1" height="1" rowspan="3">
+			<img src="images/spacer.gif" width="1" height="1" alt=""></td>
+		<td>
+			<table id="header" width="784" height="89" border="0" cellpadding="0" cellspacing="0">
+				<tr>
+					<td colspan="4">
+						<img src="images/dayTraderLogo.gif" width="319" height="53" alt=""></td>
+					<td width="465" height="53" colspan="6">
+						<img src="images/spacer.gif" width="465" height="53" alt=""></td>
+				</tr>
+				<tr>
+					<td>
+						<a href="contentHome.html" target="TradeMainContent"
+							onmouseover="window.status='Choose to see the DayTrader Architecture';  return true;"
+							onmouseout="window.status='';  return true;">
+							<img src="images/home.gif" width="92" height="29" border="0" alt=""></a></td>
+					<td width="1" height="29">
+						<img src="images/spacer.gif" width="1" height="29" alt=""></td>
+					<td>
+						<a href="app" target="TradeMainContent"
+							onmouseover="window.status='Select this tab to log on and trade portfolios.  Users are u:n and passwords are xxx';  return true;"
+							onmouseout="window.status='';  return true;">
+							<img src="images/tradingAndPortfolios.gif" width="140" height="29" border="0" alt=""></a></td>
+					<td colspan="2">
+						<a href="configure.html" target="TradeMainContent"
+							onmouseover="window.status='Allows for runtime configuration of DayTrader';  return true;"
+							onmouseout="window.status='';  return true;">
+							<img src="images/configuration.gif" width="91" height="29" border="0" alt=""></a></td>
+					<!-- <td>
+						<img src="images/reports.gif" width="77" height="29" alt=""></td> -->
+					<td>
+						<a href="web_prmtv.html" target="TradeMainContent"
+							onmouseover="window.status='Primitives used to test various J2EE and Server Features';  return true;"
+							onmouseout="window.status='';  return true;">
+							<img src="images/primitives.gif" width="78" height="29" border="0" alt=""></a></td>
+					<td>
+						<a href="docs/tradeFAQ.html" target="TradeMainContent">
+							<img src="images/faq.gif" width="86" height="29" border="0" alt=""></a></td>
+					<!--  <td>
+						<a href="#"
+							onmouseover="window.status='About Dialogue box about DayTrader';  return true;"
+							onmouseout="window.status='';  return true;">
+							<img src="images/about.gif" width="123" height="29" border="0" alt=""></a></td>-->
+					<td width="96" height="29">
+						<img src="images/spacer.gif" width="96" height="29" alt=""></td>
+				</tr>
+				<tr>
+					<td colspan="10">
+						<img src="images/topRedBar.gif" width="550" height="6" alt=""></td>
+				</tr>
+				<tr>
+					<td>
+						<img src="images/spacer.gif" width="92" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="1" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="140" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="86" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="5" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="77" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="78" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="86" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="123" height="1" alt=""></td>
+					<td>
+						<img src="images/spacer.gif" width="96" height="1" alt=""></td>
+				</tr>
+			</table></td>
+	</tr>
+</table>
+<!-- End ImageReady Slices -->
+</body>
+</html>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/header.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/DayTraderHead_blue.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/DayTraderHead_blue.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/DayTraderHead_blue.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/DayTraderHead_red.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/DayTraderHead_red.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/DayTraderHead_red.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/SOAPconfig.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/SOAPconfig.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/SOAPconfig.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/about.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/about.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/about.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/account.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/account.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/account.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/arrowdown.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/arrowdown.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/arrowdown.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/arrowup.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/arrowup.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/arrowup.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/bottomRedBar.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/bottomRedBar.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/bottomRedBar.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/configuration.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/configuration.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/configuration.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/copyRight.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/copyRight.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/copyRight.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/dayTraderLogo.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/dayTraderLogo.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/dayTraderLogo.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/faq.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/faq.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/faq.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/graph.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/graph.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/graph.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/home.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/home.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/home.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/homeBanner.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/homeBanner.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/homeBanner.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/line.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/line.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/line.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/logout.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/logout.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/logout.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/lower_banner.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/lower_banner.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/lower_banner.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/menuHome.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/menuHome.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/menuHome.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/portfolio.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/portfolio.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/portfolio.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/primitives.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/primitives.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/primitives.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/quotes.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/quotes.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/quotes.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/reports.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/reports.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/reports.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/spacer.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/spacer.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/spacer.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/ticker-anim.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/ticker-anim.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/ticker-anim.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/topRedBar.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/topRedBar.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/topRedBar.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/topline.jpg
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/topline.jpg?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/topline.jpg
------------------------------------------------------------------------------
    svn:mime-type = image/jpeg

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/tradeOverview.png
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/tradeOverview.png?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/tradeOverview.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/tradingAndPortfolios.gif
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/tradingAndPortfolios.gif?rev=775187&view=auto
==============================================================================
Binary file - no diff available.

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/images/tradingAndPortfolios.gif
------------------------------------------------------------------------------
    svn:mime-type = image/gif

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html Fri May 15 15:17:36 2009
@@ -0,0 +1,33 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<HTML>
+<HEAD>
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>DayTrader</TITLE>
+</HEAD>
+<FRAMESET rows="90,*,58" cols="785" frameborder="0" framespacing="0" border="0">
+	<FRAME src="./header.html" scrolling="NO" name="TradeFrameTop" noresize>
+	<FRAME src="./contentHome.html" scrolling="AUTO" name="TradeMainContent" noresize>
+	<FRAME src="./footer.html" name="TradeFrameBottom" scrolling="NO" noresize>
+	<NOFRAMES>
+	<BODY>
+	<P>Need browser which supports frames to see this page</P>
+	</BODY>
+	</NOFRAMES>
+</FRAMESET>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/index.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html Fri May 15 15:17:36 2009
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<HTML>
+<HEAD>
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Leftmenu</TITLE>
+<BASE target="_self">
+<LINK rel="stylesheet" href="style.css" type="text/css" />
+</HEAD>
+<BODY bgcolor="#f3f3f3" link="#000080" vlink="#000080">
+<HR width="130" size="1" align="center">
+<P align="center"><FONT size="-1"><A href="contentHome.html" target="TradeFrameMain"><FONT size="2"><BR>
+<BR>
+Overview</FONT></A></FONT></P>
+<!-- <P align="center"><FONT size="-1"><A href="docs/documentation.html" target="TradeFrameMain"><FONT size="2">Technical <BR> 
+Documentation</FONT></A></FONT></P> -->
+<P align="center"><FONT size="-1"><A href="docs/benchmarking.html" target="TradeFrameMain"><FONT size="2">Benchmarking</FONT></A></FONT></P>
+<P align="center"><FONT size="2"><A href="configure.html" target="TradeFrameMain">Configuration</A></FONT></P>
+<P align="center"><FONT size="-1"><A href="app" target="TradeFrameMain"><FONT size="2">Go Trade!</FONT></A></FONT></P>
+<P align="center"><FONT size="-1"><A href="web_prmtv.html" target="TradeFrameMain">Web Primitives</A></FONT></P>
+<HR width="130" size="1" align="center">
+<!-- <P align="center"><I><IMG src="images/DayTraderHead_red.gif" border="0" width="112" height="36"><BR>
+<BR>
+</I><B><IMG src="images/GLogo_450x50.gif" width="150" height="21" border="0"><BR>
+</B></P> 
+<HR width="130" size="1" align="center"> -->
+</BODY>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/leftMenu.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp Fri May 15 15:17:36 2009
@@ -0,0 +1,113 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<%@ page
+	import="java.util.Collection, java.util.Iterator, org.apache.geronimo.samples.daytrader.*, org.apache.geronimo.samples.daytrader.util.*"
+	session="true" isThreadSafe="true" isErrorPage="false"%>
+
+<%
+TradeServices tAction=null;
+tAction = new TradeAction();
+MarketSummaryDataBean marketSummaryData = tAction.getMarketSummary();
+%>
+<TABLE border="1" bgcolor="#ffffff" width="100%"
+	style="font-size: smaller">
+	<TBODY>
+		<TR>
+			<TD colspan="2" bgcolor="#000000" align="center" height="15"><FONT
+				color="#ffffff"><B>Market Summary<BR>
+			<%= marketSummaryData.getSummaryDate() %></B></FONT></TD>
+		</TR>
+		<TR>
+			<TD align="right" bgcolor="#fafcb6" height="47" width="100"><A
+				href="docs/glossary.html">DayTrader Stock Index (TSIA)</A></TD>
+			<TD align="center" valign="middle" bgcolor="#ffffff" height="47"
+				width="141"><%= marketSummaryData.getTSIA() %> <%= FinancialUtils.printGainPercentHTML(marketSummaryData.getGainPercent()) %></TD>
+		</TR>
+		<TR>
+			<TD align="right" bgcolor="#fafcb6"><A href="docs/glossary.html">Trading
+			Volume</A></TD>
+			<TD align="center" valign="middle"><%= marketSummaryData.getVolume() %></TD>
+		</TR>
+		<TR>
+			<TD align="right" bgcolor="#fafcb6" width="74"><A
+				href="docs/glossary.html">Top Gainers</A></TD>
+			<TD bgcolor="#ffffff">
+			<TABLE width="100%" border="1" height="100%"
+				style="font-size: smaller">
+				<TBODY>
+					<TR align="center">
+						<TD><A href="docs/glossary.html">symbol</A></TD>
+						<TD><A href="docs/glossary.html">price</A></TD>
+						<TD><A href="docs/glossary.html">change</A></TD>
+					</TR>
+					<%                              
+Collection topGainers = marketSummaryData.getTopGainers();
+Iterator gainers = topGainers.iterator();
+int count=0;
+while (gainers.hasNext() && (count++ < 5))
+{
+	QuoteDataBean quoteData = (QuoteDataBean) gainers.next();
+%>
+					<TR align="center">
+						<TD width="24"><%= FinancialUtils.printQuoteLink(quoteData.getSymbol()) %>
+						</TD>
+						<TD><%= quoteData.getPrice() %></TD>
+						<TD width="52" nowrap><%= FinancialUtils.printGainHTML(quoteData.getPrice().subtract(quoteData.getOpen())) /*FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(quoteData.getPrice(), quoteData.getOpen()))*/ %></TD>
+					</TR>
+					<%
+}
+%>
+				</TBODY>
+			</TABLE>
+			</TD>
+		</TR>
+		<TR>
+			<TD align="right" height="55" bgcolor="#fafcb6" width="74"><A
+				href="docs/glossary.html">Top Losers</A></TD>
+			<TD height="55" bgcolor="#ffffff" width="141">
+			<TABLE width="100%" border="1" height="100%"
+				style="font-size: smaller">
+				<TBODY>
+					<TR align="center">
+						<TD><A href="docs/glossary.html">symbol</A></TD>
+						<TD><A href="docs/glossary.html">price</A></TD>
+						<TD><A href="docs/glossary.html">change</A></TD>
+					</TR>
+					<%
+Collection topLosers = marketSummaryData.getTopLosers();
+Iterator losers  = topLosers.iterator();
+count=0;
+while (losers.hasNext() && (count++ < 5))
+
+{
+	QuoteDataBean quoteData = (QuoteDataBean) losers.next();
+%>
+					<TR align="center">
+						<TD width="24" nowrap><%= FinancialUtils.printQuoteLink(quoteData.getSymbol()) %>
+						</TD>
+						<TD><%= quoteData.getPrice() %></TD>
+						<TD width="52" nowrap><%= FinancialUtils.printGainHTML(quoteData.getPrice().subtract(quoteData.getOpen())) /* FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(quoteData.getPrice(), quoteData.getOpen())) */%></TD>
+					</TR>
+					<%
+}
+%>
+				</TBODY>
+			</TABLE>
+			</TD>
+		</TR>
+	</TBODY>
+</TABLE>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/marketSummary.jsp
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp Fri May 15 15:17:36 2009
@@ -0,0 +1,188 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Trade Order information</TITLE>
+
+</HEAD>
+<BODY bgcolor="#ffffff" link="#000099" vlink="#000099">
+<%@ page import="java.util.Collection, java.util.Iterator, org.apache.geronimo.samples.daytrader.*, org.apache.geronimo.samples.daytrader.util.*" session="true" isThreadSafe="true" isErrorPage="false"%>
+<jsp:useBean id="results" scope="request" type="java.lang.String" />
+
+<TABLE height="54">
+  <TBODY>
+    <TR>
+			<TD bgcolor="#c93333" align="left" width="640" height="10" colspan=5><B><FONT
+				color="#ffffff">DayTrader New Orders</FONT></B></TD>
+			<TD align="center" bgcolor="#000000" width="100" height="10"><FONT
+				color="#ffffff"><B>DayTrader</B></FONT></TD>
+        </TR>
+        <TR align="left">
+            <TD><B><A href="app?action=home">Home</A></B><B> </B></TD>
+            <TD><B><A href="app?action=account">Account</A></B><B> </B></TD>
+            <TD><B><A href="app?action=portfolio">Portfolio</A></B><B> </B></TD>
+            <TD><B><A href="app?action=quotes&symbols=s:0,s:1,s:2,s:3,s:4">Quotes/Trade</A></B></TD>
+            <TD><B><A href="app?action=logout">Logoff</A></B></TD>
+            <TD></TD>
+        </TR>
+        <TR>
+            <TD align="right" colspan="6">
+            <HR>
+            <FONT color="#ff0000" size="-2"><%= new java.util.Date() %></FONT></TD>
+        </TR>
+<%
+Collection closedOrders = (Collection)request.getAttribute("closedOrders");
+if ( (closedOrders != null) && (closedOrders.size()>0) )
+{
+%>         
+        <TR>
+            <TD colspan="6" bgcolor="#ff0000"><BLINK><B><FONT color="#ffffff">Alert: The following Order(s) have completed.</FONT></B></BLINK></TD>
+        </TR>
+        <TR align="center">
+            <TD colspan="6">
+            <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+<%
+	Iterator it = closedOrders.iterator();
+	while (it.hasNext() )
+	{
+		OrderDataBean closedOrderData = (OrderDataBean)it.next();
+%>                            
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">order ID</A></TD>
+                                    <TD><A href="docs/glossary.html">order status</A></TD>
+                                    <TD><A href="docs/glossary.html">creation date</A></TD>
+									<TD><A href="docs/glossary.html">completion date</A></TD>
+									<TD><A href="docs/glossary.html">txn fee</A></TD>
+									<TD><A href="docs/glossary.html">type</A></TD>
+									<TD><A href="docs/glossary.html">symbol</A></TD>
+									<TD><A href="docs/glossary.html">quantity</A></TD>
+                                </TR>
+                                <TR align="center">
+                        <TD><%= closedOrderData.getOrderID()%></TD>
+                        <TD><%= closedOrderData.getOrderStatus()%></TD>
+                                    <TD><%= closedOrderData.getOpenDate()%></TD>
+                                    <TD><%= closedOrderData.getCompletionDate()%></TD>
+                                    <TD><%= closedOrderData.getOrderFee()%></TD>
+                                    <TD><%= closedOrderData.getOrderType()%></TD>
+                                    <TD><%= FinancialUtils.printQuoteLink(closedOrderData.getSymbol()) %></TD>
+                                    <TD><%= closedOrderData.getQuantity()%></TD>
+                                </TR>
+        <%
+	}
+%>
+                                
+                            </TBODY>
+                        </TABLE>
+            </TD>
+        </TR>
+        <%
+}
+%>
+    </TBODY>
+</TABLE>
+<TABLE width="650">
+    <TBODY>
+        <TR>
+            <TD>
+            <TABLE width="100%">
+                <TBODY>
+                    <TR>
+                        <TD></TD>
+                    </TR>
+                    <% 
+ OrderDataBean orderData = (OrderDataBean)request.getAttribute("orderData");
+ if ( orderData != null )
+ {
+                    %>
+                    <TR>
+                        <TD align="left" bgcolor="#cccccc"><B>New Order</B></TD>
+                    </TR>
+                    <TR>
+                        <TD align="left"><FONT color="#cc0000"><B><BR>
+                        Order <%=orderData.getOrderID()%></B> to <B><%=orderData.getOrderType()%> <%=orderData.getQuantity()%></B> shares of <B><%=orderData.getSymbol()%></B> has been submitted for processing. </FONT><BR>
+                        <BR>
+                        <FONT color="#000000">Order <FONT color="#000000"><B><%=orderData.getOrderID()%></B></FONT> details:</FONT></TD>
+                    </TR>
+                    <TR>
+                        <TD align="center">
+                        <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">order ID</A></TD>
+                                    <TD><A href="docs/glossary.html">order status</A></TD>
+                                    <TD><A href="docs/glossary.html">creation date</A></TD>
+									<TD><A href="docs/glossary.html">completion date</A></TD>
+									<TD><A href="docs/glossary.html">txn fee</A></TD>
+									<TD><A href="docs/glossary.html">type</A></TD>
+									<TD><A href="docs/glossary.html">symbol</A></TD>
+									<TD><A href="docs/glossary.html">quantity</A></TD>
+                                </TR>
+                                <TR align="center" bgcolor="#fafcb6">
+                                    <TD><%= orderData.getOrderID()%></TD>
+                                    <TD><%= orderData.getOrderStatus()%></TD>
+                                    <TD><%= orderData.getOpenDate()%></TD>
+                                    <TD><%= orderData.getCompletionDate()%></TD>
+                                    <TD><%= orderData.getOrderFee()%></TD>
+                                    <TD><%= orderData.getOrderType()%></TD>
+                                    <TD><%= FinancialUtils.printQuoteLink(orderData.getSymbol()) %></TD>
+                                    <TD><%= orderData.getQuantity()%></TD>
+                                </TR>
+                            </TBODY>
+                        </TABLE>
+                        </TD>
+                    </TR>
+<% 
+ }
+ %>
+                </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+    </TBODY>
+</TABLE>
+<TABLE height="54" style="font-size: smaller">
+  <TBODY>
+        <TR>
+            <TD colspan="2">
+            <HR>
+            </TD>
+        </TR>
+        <TR>
+            <TD colspan="2">
+            <TABLE width="100%" style="font-size: smaller">
+                <TBODY>
+                    <TR>
+                        <TD>Note: Click any <A href="docs/glossary.html">symbol</A> for a quote or to trade.</TD>
+                        <TD align="right"><FORM><INPUT type="submit" name="action" value="quotes"> <INPUT size="20" type="text" name="symbols" value="s:0, s:1, s:2, s:3, s:4"></FORM></TD>
+                    </TR>
+                </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+        <TR>
+			<TD bgcolor="#c93333" align="left" width="640" height="10"><B><FONT
+				color="#ffffff">DayTrader New Orders</FONT></B></TD>
+			<TD align="center" bgcolor="#000000" width="100" height="10"><FONT
+				color="#ffffff"><B>DayTrader</B></FONT></TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/order.jsp
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp Fri May 15 15:17:36 2009
@@ -0,0 +1,187 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Trade Order information</TITLE>
+
+</HEAD>
+<BODY bgcolor="#ffffff" link="#000099" vlink="#000099">
+<%@ page import="java.util.Collection, java.util.Iterator, org.apache.geronimo.samples.daytrader.*, org.apache.geronimo.samples.daytrader.util.*" session="true" isThreadSafe="true" isErrorPage="false"%>
+<jsp:useBean id="results" scope="request" type="java.lang.String" />
+
+<TABLE height="54">
+  <TBODY>
+    <TR>
+    			<TD bgcolor="#c93333" align="left" width="640" height="10" colspan=5><B><FONT
+				color="#ffffff">DayTrader New Orders</FONT></B></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10">
+			    <IMG src="images/spacer.gif" width="45" height="19" border="0"></TD>
+		</TR>
+        <TR align="left">
+            <TD><A href="app?action=home"><IMG src="images/home.gif" width="80" height="20" border="0"></A></TD>
+            <TD><A href="app?action=account"><IMG src="images/account.gif" width="80" height="20" border="0"></A></TD>
+            <TD><B><A href="app?action=portfolio"><IMG src="images/portfolio.gif" width="80" height="20" border="0"></A> </B></TD>
+            <TD><A href="app?action=quotes&symbols=s:0,s:1,s:2,s:3,s:4"><IMG src="images/quotes.gif" width="80" height="20" border="0"></A></TD>
+            <TD><A href="app?action=logout"><IMG src="images/logout.gif" width="80" height="20" border="0"></A></TD>
+            <TD><IMG src="images/graph.gif" width="32" height="32" border="0"></TD>
+        </TR>
+        <TR>
+			<TD align="left" colspan="6"><IMG src="images/line.gif" width="600" height="6" border="0"><FONT color="#ff0000" size="-2"><BR>
+			<%= new java.util.Date() %></FONT></TD>
+		</TR>
+<%
+Collection closedOrders = (Collection)request.getAttribute("closedOrders");
+if ( (closedOrders != null) && (closedOrders.size()>0) )
+{
+%>         
+        <TR>
+            <TD colspan="6" bgcolor="#ff0000"><BLINK><B><FONT color="#ffffff">Alert: The following Order(s) have completed.</FONT></B></BLINK></TD>
+        </TR>
+        <TR align="center">
+            <TD colspan="6">
+            <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+<%
+	Iterator it = closedOrders.iterator();
+	while (it.hasNext() )
+	{
+		OrderDataBean closedOrderData = (OrderDataBean)it.next();
+%>                            
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">order ID</A></TD>
+                                    <TD><A href="docs/glossary.html">order status</A></TD>
+                                    <TD><A href="docs/glossary.html">creation date</A></TD>
+									<TD><A href="docs/glossary.html">completion date</A></TD>
+									<TD><A href="docs/glossary.html">txn fee</A></TD>
+									<TD><A href="docs/glossary.html">type</A></TD>
+									<TD><A href="docs/glossary.html">symbol</A></TD>
+									<TD><A href="docs/glossary.html">quantity</A></TD>
+                                </TR>
+                                <TR align="center">
+                        <TD><%= closedOrderData.getOrderID()%></TD>
+                        <TD><%= closedOrderData.getOrderStatus()%></TD>
+                                    <TD><%= closedOrderData.getOpenDate()%></TD>
+                                    <TD><%= closedOrderData.getCompletionDate()%></TD>
+                                    <TD><%= closedOrderData.getOrderFee()%></TD>
+                                    <TD><%= closedOrderData.getOrderType()%></TD>
+                                    <TD><%= FinancialUtils.printQuoteLink(closedOrderData.getSymbol()) %></TD>
+                                    <TD><%= closedOrderData.getQuantity()%></TD>
+                                </TR>
+        <%
+	}
+%>
+                                
+                            </TBODY>
+                        </TABLE>
+            </TD>
+        </TR>
+        <%
+}
+%>
+    </TBODY>
+</TABLE>
+<TABLE width="650">
+    <TBODY>
+        <TR>
+            <TD>
+            <TABLE width="100%">
+                <TBODY>
+                    <TR>
+                        <TD></TD>
+                    </TR>
+                    <% 
+ OrderDataBean orderData = (OrderDataBean)request.getAttribute("orderData");
+ if ( orderData != null )
+ {
+                    %>
+                    <TR>
+                        <TD align="left" bgcolor="#cccccc"><B>New Order</B></TD>
+                    </TR>
+                    <TR>
+                        <TD align="left"><FONT color="#cc0000"><B><BR>
+                        Order <%=orderData.getOrderID()%></B> to <B><%=orderData.getOrderType()%> <%=orderData.getQuantity()%></B> shares of <B><%=orderData.getSymbol()%></B> has been submitted for processing. </FONT><BR>
+                        <BR>
+                        <FONT color="#000000">Order <FONT color="#000000"><B><%=orderData.getOrderID()%></B></FONT> details:</FONT></TD>
+                    </TR>
+                    <TR>
+                        <TD align="center">
+                        <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">order ID</A></TD>
+                                    <TD><A href="docs/glossary.html">order status</A></TD>
+                                    <TD><A href="docs/glossary.html">creation date</A></TD>
+									<TD><A href="docs/glossary.html">completion date</A></TD>
+									<TD><A href="docs/glossary.html">txn fee</A></TD>
+									<TD><A href="docs/glossary.html">type</A></TD>
+									<TD><A href="docs/glossary.html">symbol</A></TD>
+									<TD><A href="docs/glossary.html">quantity</A></TD>
+                                </TR>
+                                <TR align="center" bgcolor="#fafcb6">
+                                    <TD><%= orderData.getOrderID()%></TD>
+                                    <TD><%= orderData.getOrderStatus()%></TD>
+                                    <TD><%= orderData.getOpenDate()%></TD>
+                                    <TD><%= orderData.getCompletionDate()%></TD>
+                                    <TD><%= orderData.getOrderFee()%></TD>
+                                    <TD><%= orderData.getOrderType()%></TD>
+                                    <TD><%= FinancialUtils.printQuoteLink(orderData.getSymbol()) %></TD>
+                                    <TD><%= orderData.getQuantity()%></TD>
+                                </TR>
+                            </TBODY>
+                        </TABLE>
+                        </TD>
+                    </TR>
+<% 
+ }
+ %>
+                </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+    </TBODY>
+</TABLE>
+<TABLE height="54" style="font-size: smaller">
+  <TBODY>
+        <TR>
+            <TD colspan="2">
+            <HR>
+            </TD>
+        </TR>
+        <TR>
+            <TD colspan="2">
+            <TABLE width="100%" style="font-size: smaller">
+                <TBODY>
+                    <TR>
+                        <TD>Note: Click any <A href="docs/glossary.html">symbol</A> for a quote or to trade.</TD>
+                        <TD align="right"><FORM><INPUT type="submit" name="action" value="quotes"> <INPUT size="20" type="text" name="symbols" value="s:0, s:1, s:2, s:3, s:4"></FORM></TD>
+                    </TR>
+                </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+        <TR>
+    			<TD bgcolor="#c93333" align="left" width="640" height="10"><B><FONT
+				color="#ffffff">DayTrader New Orders</FONT></B></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10">
+			    <IMG src="images/spacer.gif" width="45" height="19" border="0"></TD>
+		</TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/orderImg.jsp
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp
URL: http://svn.apache.org/viewvc/geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp?rev=775187&view=auto
==============================================================================
--- geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp (added)
+++ geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp Fri May 15 15:17:36 2009
@@ -0,0 +1,238 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Trade Portfolio</TITLE>
+<LINK rel="stylesheet" href="style.css" type="text/css" />
+</HEAD>
+<BODY bgcolor="#ffffff" link="#000099" vlink="#000099">
+<%@ page import="java.util.Collection, java.util.Iterator, java.util.HashMap, java.math.BigDecimal, org.apache.geronimo.samples.daytrader.*, org.apache.geronimo.samples.daytrader.util.*" session="true" isThreadSafe="true" isErrorPage="false"%>
+<jsp:useBean id="results" scope="request" type="java.lang.String" />
+<jsp:useBean id="holdingDataBeans" type="java.util.Collection" scope="request" />
+<jsp:useBean id="quoteDataBeans" type="java.util.Collection" scope="request"/>
+<TABLE height="54">
+  <TBODY>
+    <TR>
+			<TD bgcolor="#c93333" align="left" width="640" height="10" colspan=5><B><FONT
+				color="#ffffff">DayTrader Portfolio</FONT></B></TD>
+			<TD align="center" bgcolor="#000000" width="100" height="10"><FONT
+				color="#ffffff"><B>DayTrader</B></FONT></TD>
+        </TR>
+        <TR align="left">
+            <TD><B><A href="app?action=home">Home</A></B><B> </B></TD>
+            <TD><B><A href="app?action=account">Account</A></B><B> </B></TD>
+            <TD><B><A href="app?action=portfolio">Portfolio</A></B><B> </B></TD>
+            <TD><B><A href="app?action=quotes&symbols=s:0,s:1,s:2,s:3,s:4">Quotes/Trade</A></B></TD>
+            <TD><B><A href="app?action=logout">Logoff</A></B></TD>
+            <TD></TD>
+        </TR>
+        <TR>
+            <TD align="right" colspan="6">
+            <HR>
+            <FONT color="#ff0000" size="-2"><%= new java.util.Date() %></FONT></TD>
+        </TR>
+<%
+Collection closedOrders = (Collection)request.getAttribute("closedOrders");
+if ( (closedOrders != null) && (closedOrders.size()>0) )
+{
+%>         
+        <TR>
+            <TD colspan="6" bgcolor="#ff0000"><BLINK><B><FONT color="#ffffff">Alert: The following Order(s) have completed.</FONT></B></BLINK></TD>
+        </TR>
+        <TR align="center">
+            <TD colspan="6">
+            <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+<%
+	Iterator it = closedOrders.iterator();
+	while (it.hasNext() )
+	{
+		OrderDataBean closedOrderData = (OrderDataBean)it.next();
+%>                            
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">order ID</A></TD>
+                                    <TD><A href="docs/glossary.html">order status</A></TD>
+                                    <TD><A href="docs/glossary.html">creation date</A></TD>
+									<TD><A href="docs/glossary.html">completion date</A></TD>
+									<TD><A href="docs/glossary.html">txn fee</A></TD>
+									<TD><A href="docs/glossary.html">type</A></TD>
+									<TD><A href="docs/glossary.html">symbol</A></TD>
+									<TD><A href="docs/glossary.html">quantity</A></TD>
+                                </TR>
+                                <TR align="center">
+                        <TD><%= closedOrderData.getOrderID()%></TD>
+                        <TD><%= closedOrderData.getOrderStatus()%></TD>
+                                    <TD><%= closedOrderData.getOpenDate()%></TD>
+                                    <TD><%= closedOrderData.getCompletionDate()%></TD>
+                                    <TD><%= closedOrderData.getOrderFee()%></TD>
+                                    <TD><%= closedOrderData.getOrderType()%></TD>
+                                    <TD><%= FinancialUtils.printQuoteLink(closedOrderData.getSymbol())%></TD>
+                                    <TD><%= closedOrderData.getQuantity()%></TD>
+                                </TR>
+        <%
+	}
+%>
+                                
+                            </TBODY>
+                        </TABLE>
+            </TD>
+        </TR>
+        <%
+}
+%>
+    </TBODY>
+</TABLE>
+<TABLE width="645">
+    <TBODY>
+        <TR>
+            <TD valign="top" width="643">
+            <TABLE width="100%">
+                <TBODY>
+
+                    <TR>
+                        <TD colspan="5" bgcolor="#cccccc"><B>Portfolio </B></TD>
+                        <TD bgcolor="#cccccc" align="right"><B>Number of Holdings: </B><%= holdingDataBeans.size()
+%></TD>
+                    </TR>
+                    <TR align="center">
+                        <TD colspan="6">
+                        <CENTER></CENTER>
+                        <TABLE border="1" style="font-size: smaller">
+                            <CAPTION align="bottom"><B>Portfolio </B></CAPTION>
+                            <TBODY>
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">holding ID</A></TD>
+                                    <TD><A href="docs/glossary.html">purchase date</A></TD>
+                                    <TD><A href="docs/glossary.html">symbol</A></TD>
+                                    <TD><A href="docs/glossary.html">quantity</A></TD>
+                                    <TD><A href="docs/glossary.html">purchase price</A></TD>
+                                    <TD><A href="docs/glossary.html">current price</A></TD>
+                                    <TD><A href="docs/glossary.html">purchase basis</A></TD>                                    
+                                    <TD><A href="docs/glossary.html">market value</A></TD>
+                                    <TD><A href="docs/glossary.html">gain/(loss)</A></TD>
+                                    <TD><B><A href="docs/glossary.html">trade</A></B></TD>
+                                </TR>
+                                <% // Create Hashmap for quick lookup of quote values
+Iterator it = quoteDataBeans.iterator();
+HashMap quoteMap = new HashMap();                                
+while ( it.hasNext() ) 
+{
+	QuoteDataBean quoteData = (QuoteDataBean) it.next();
+	quoteMap.put(quoteData.getSymbol(), quoteData);
+}
+//Step through and printout Holdings
+
+it = holdingDataBeans.iterator();
+BigDecimal totalGain = new BigDecimal(0.0);
+BigDecimal totalBasis = new BigDecimal(0.0);
+BigDecimal totalValue = new BigDecimal(0.0);
+try {
+	while (it.hasNext()) {
+		HoldingDataBean holdingData = (HoldingDataBean) it.next();
+		QuoteDataBean quoteData = (QuoteDataBean) quoteMap.get(holdingData.getQuoteID());
+		BigDecimal basis = holdingData.getPurchasePrice().multiply(new BigDecimal(holdingData.getQuantity()));
+		BigDecimal marketValue = quoteData.getPrice().multiply(new BigDecimal(holdingData.getQuantity()));
+		totalBasis = totalBasis.add(basis);	
+		totalValue = totalValue.add(marketValue);	
+		BigDecimal gain = marketValue.subtract(basis);
+		totalGain = totalGain.add(gain);
+		BigDecimal gainPercent = null;
+		if (basis.doubleValue() == 0.0)
+		{
+			gainPercent = new BigDecimal(0.0);
+			Log.error("portfolio.jsp: Holding with zero basis. holdingID="+holdingData.getHoldingID() + " symbol=" + holdingData.getQuoteID() + " purchasePrice=" + holdingData.getPurchasePrice());
+		}
+		else
+			gainPercent = marketValue.divide(basis, BigDecimal.ROUND_HALF_UP).subtract(new BigDecimal(1.0)).multiply(new BigDecimal(100.0));                        	
+	
+                         %>
+                                <TR bgcolor="#fafcb6" align="center">
+                                    <TD><%= holdingData.getHoldingID() %></TD>
+                                    <TD><%= holdingData.getPurchaseDate() %></TD>
+                                    <TD><%= FinancialUtils.printQuoteLink(holdingData.getQuoteID()) %></TD>
+                                    <TD><%= holdingData.getQuantity() %></TD>
+                                    <TD><%= holdingData.getPurchasePrice() %></TD>
+                                    <TD><%= quoteData.getPrice() %></TD>
+                                    <TD><%= basis %></TD>
+                                    <TD><%= marketValue %></TD>
+                                    <TD><%= FinancialUtils.printGainHTML(gain) %></TD>
+                                    <TD><B><%= "<A href=\"app?action=sell&holdingID=" + holdingData.getHoldingID()+"\">sell</A>"%></B></TD>
+                                </TR>
+                                <% 
+	}
+}
+catch (Exception e)
+{
+     Log.error("portfolio.jsp: error displaying user holdings", e);
+}
+				%>
+                                <TR align="center">
+                                    <TD></TD>
+                                    <TD></TD>
+                                    <TD></TD>
+                                    <TD></TD>
+                                    <TD></TD>
+                                    <TD><B>Total</B></TD>
+                                    <TD align="center">$ <%= totalBasis %></TD>
+                                    <TD align="center">$ <%= totalValue %></TD>
+                                    <TD align="center" colspan="2">$ <%= FinancialUtils.printGainHTML(totalGain) %> <%= FinancialUtils.printGainPercentHTML(FinancialUtils.computeGainPercent(totalValue, totalBasis)) %></TD>
+                                </TR>
+                            </TBODY>
+                        </TABLE>
+                        <CENTER></CENTER>
+                        </TD>
+                    </TR>
+                    <TR>
+                        <TD colspan="6"></TD>
+                    </TR>
+               </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+    </TBODY>
+</TABLE>
+<TABLE height="54" style="font-size: smaller">
+  <TBODY>
+        <TR>
+            <TD colspan="2">
+            <HR>
+            </TD>
+        </TR>
+        <TR>
+            <TD colspan="2">
+            <TABLE width="100%" style="font-size: smaller">
+                <TBODY>
+                    <TR>
+                        <TD>Note: Click any <A href="docs/glossary.html">symbol</A> for a quote or to trade.</TD>
+                        <TD align="right"><FORM><INPUT type="submit" name="action" value="quotes"> <INPUT size="20" type="text" name="symbols" value="s:0, s:1, s:2, s:3, s:4"></FORM></TD>
+                    </TR>
+                </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+        <TR>
+			<TD bgcolor="#c93333" align="left" width="640" height="10"><B><FONT
+				color="#ffffff">DayTrader Portfolio</FONT></B></TD>
+			<TD align="center" bgcolor="#000000" width="100" height="10"><FONT
+				color="#ffffff"><B>DayTrader</B></FONT></TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: geronimo/daytrader/trunk/daytrader-webonly/src/main/webapp/portfolio.jsp
------------------------------------------------------------------------------
    svn:mime-type = text/plain



Mime
View raw message