You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ho...@apache.org on 2005/10/06 06:34:46 UTC

svn commit: r306524 [2/3] - in /geronimo/trunk/sandbox/daytrader: ./ modules/web/src/webapp/

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolio.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolio.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolio.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolio.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<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="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Portfolio</B></FONT></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR align="center">
+            <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="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Portfolio</FONT></B></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR>
+            <TD colspan="2" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+
+ 
+Copyright 2000, IBM Corporation</TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolioImg.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolioImg.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolioImg.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/portfolioImg.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<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="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Portfolio</B></FONT></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10"><IMG src="images/tradeLogo.gif" width="45" height="19" border="0"></TD>
+		</TR>
+        <TR align="center">
+            <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"><BR>
+			<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="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Portfolio</FONT></B></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10"><IMG src="images/tradeLogo.gif" width="45" height="19" border="0"></TD>
+		</TR>
+        <TR>
+			<TD colspan="4" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+			Copyright 2000, IBM Corporation<BR>
+			<IMG src="images/WEBSPHERE_18P_UNIX.GIF" width="113" height="18" border="0"><BR>
+			<BR>
+			<IMG src="images/ticker-anim.gif" width="385" height="22" border="0" align="middle"></TD>
+		</TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quote.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quote.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quote.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quote.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,170 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Trade: Quotes and Trading</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.math.BigDecimal, org.apache.geronimo.samples.daytrader.*, org.apache.geronimo.samples.daytrader.util.*" session="true" isThreadSafe="true" isErrorPage="false"%>
+
+<TABLE height="54">
+  <TBODY>
+    <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Quotes</B></FONT></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR align="center">
+            <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>
+                    <TR>
+                        <TD bgcolor="#cccccc"> <B>Quotes</B></TD>
+                    </TR>
+                    <TR>
+                        <TD align="center">
+                        <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">symbol</A></TD>
+                                    <TD><A href="docs/glossary.html">company</A></TD>
+									<TD><A href="docs/glossary.html">volume</A></TD>  
+                                    <TD><A href="docs/glossary.html">price range</A></TD>
+                                    <TD><A href="docs/glossary.html">open price</A></TD>                                    									                                  
+                                    <TD><A href="docs/glossary.html">current price</A></TD>
+                                    <TD><A href="docs/glossary.html">gain/(loss)</A></TD>
+                                    <TD><A href="docs/glossary.html">trade</A></TD>
+                                </TR>
+                    <% 
+
+
+
+String symbols = request.getParameter("symbols");
+if (symbols == null)
+	symbols = "no_stock_symbol_provided";
+java.util.ArrayList quotes = new java.util.ArrayList();
+java.util.StringTokenizer st = new java.util.StringTokenizer(symbols, " ,");
+while (st.hasMoreElements())
+{
+ 		String symbol = st.nextToken();
+		String displayQuoteURL = "displayQuote.jsp?symbol="+symbol;
+                    %>
+        <jsp:include page="<%=displayQuoteURL%>"/>
+
+                    <% 
+ }
+					%>                                                  
+                            </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="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Quotes</FONT></B></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR>
+            <TD colspan="2" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+
+ 
+Copyright 2000, IBM Corporation</TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>
\ No newline at end of file

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quoteImg.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quoteImg.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quoteImg.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/quoteImg.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,171 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Trade: Quotes and Trading</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.math.BigDecimal, org.apache.geronimo.samples.daytrader.*, org.apache.geronimo.samples.daytrader.util.*" session="true" isThreadSafe="true" isErrorPage="false"%>
+
+<TABLE height="54">
+  <TBODY>
+    <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Quotes</B></FONT></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10"><IMG src="images/tradeLogo.gif" width="45" height="19" border="0"></TD>
+		</TR>
+        <TR align="center">
+            <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"><BR>
+			<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>
+                    <TR>
+                        <TD bgcolor="#cccccc"> <B>Quotes</B></TD>
+                    </TR>
+                    <TR>
+                        <TD align="center">
+                        <TABLE border="1" style="font-size: smaller">
+                            <TBODY>
+                                <TR align="center">
+                                    <TD><A href="docs/glossary.html">symbol</A></TD>
+                                    <TD><A href="docs/glossary.html">company</A></TD>
+									<TD><A href="docs/glossary.html">volume</A></TD>  
+                                    <TD><A href="docs/glossary.html">price range</A></TD>
+                                    <TD><A href="docs/glossary.html">open price</A></TD>                                    									                                  
+                                    <TD><A href="docs/glossary.html">current price</A></TD>
+                                    <TD><A href="docs/glossary.html">gain/(loss)</A></TD>
+                                    <TD><A href="docs/glossary.html">trade</A></TD>
+                                </TR>
+
+                    <% 
+String symbols = request.getParameter("symbols");
+if (symbols == null)
+	symbols = "no_stock_symbol_provided";
+java.util.ArrayList quotes = new java.util.ArrayList();
+java.util.StringTokenizer st = new java.util.StringTokenizer(symbols, " ,");
+while (st.hasMoreElements())
+{
+ 		String symbol = st.nextToken();
+
+                    %>
+        <jsp:include page="displayQuote.jsp">
+        	<jsp:param name="symbol" value="<%= symbol%>"/>
+        </jsp:include>      
+
+                    <% 
+ }
+					%>                                                                                  
+
+                            </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="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Quotes</FONT></B></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10"><IMG src="images/tradeLogo.gif" width="45" height="19" border="0"></TD>
+		</TR>
+        <TR>
+			<TD colspan="4" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+			Copyright 2000, IBM Corporation<BR>
+			<IMG src="images/WEBSPHERE_18P_UNIX.GIF" width="113" height="18" border="0"><BR>
+			<BR>
+			<IMG src="images/ticker-anim.gif" width="385" height="22" border="0" align="middle"></TD>
+		</TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>
\ No newline at end of file

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/register.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/register.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/register.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/register.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,127 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Trade Registration</TITLE>
+<BODY bgcolor="#ffffff" link="#000099">
+<%@ page session="false" %>
+<% 
+String blank = "";
+String fakeCC = "123-fake-ccnum-456";
+String fullname =   request.getParameter ( "Full Name" );
+String snailmail=   request.getParameter ( "snail mail" );
+String email =      request.getParameter ( "email" ); 
+String userID =     request.getParameter ( "user id" ); 
+String money =      request.getParameter ( "money" ); 
+String creditcard = request.getParameter ( "Credit Card Number" );
+String results =   (String) request.getAttribute ( "results" );
+%>
+<TABLE style="font-size: smaller">
+  <TBODY>
+    <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Home</B></FONT></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+    </TR>
+  </TBODY>
+</TABLE>
+<TABLE width="100%" height="30">
+  <TBODY>
+        <TR>
+      <TD align="center"></TD>
+      <TD><FONT color="#ff3333"><%= results==null ? blank : results %></FONT></TD>
+      <TD></TD>
+    </TR>
+  </TBODY>
+</TABLE>
+<TABLE width="90%">
+  <TBODY>
+    <TR>
+      <TD width="2%" bgcolor="#e7e4e7"></TD>
+      <TD width="98%" colspan="8"><B>Register</B>
+            <HR>
+      </TD>
+    </TR>
+    </TBODY>
+</TABLE>
+<FORM action="app">
+<TABLE width="90%">
+  <TBODY align="right">
+    <TR>
+      <TD width="2%" bgcolor="#e7e4e7" rowspan="11"></TD>
+      <TD width="33%" colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>Full name:</B></TD>
+      <TD width ="20%" colspan="2" align="right"><INPUT size="40" type="text" name="Full Name" value="<%= fullname==null ? blank : fullname %>"></TD>
+      <TD width="2%" bgcolor="#e7e4e7" rowspan="11"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>Address:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="text" name="snail mail" value="<%= snailmail==null ? blank : snailmail %>"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>E-Mail address:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="text" name="email" value="<%= email==null ? blank : email %>"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4">&nbsp;</TD>
+      <TD colspan="2" align="right">&nbsp;</TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>User ID:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="text" name="user id" value="<%= userID==null ? blank : userID %>"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><B><FONT COLOR="#FF0000">*</FONT>Password:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="password" name="passwd"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><B><FONT COLOR="#FF0000">*</FONT>Confirm password:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="password" name="confirm passwd"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4">&nbsp;</TD>
+      <TD colspan="2" align="right">&nbsp;</TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>Opening account balance:</B></TD>
+      <TD colspan="2" align="right">$<B> </B><INPUT size="20" type="text" name="money" value='<%= money==null ? "10000" : money %>'></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><B><FONT COLOR="#FF0000">*</FONT>Credit card number:</B></TD>
+      <TD colspan="2" align="right">&nbsp;&nbsp;<INPUT size="40" type="text" name="Credit Card Number" value="<%= creditcard==null ? fakeCC : creditcard %>" readonly></TD>
+    </TR>
+    <TR>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"><INPUT type="submit" value="Submit Registration"></TD>
+    </TR>
+    <TR>
+      <TD align="right" colspan="6"></TD>
+    </TR>
+    </TBODY>
+</TABLE>
+<INPUT type="hidden" name="action" value="register"></FORM>
+<TABLE height="54" style="font-size: smaller">
+  <TBODY>
+        <TR>
+            <TD colspan="2">
+            <HR>
+            </TD>
+        </TR>
+        <TR>
+            <TD colspan="2"></TD>
+        </TR>
+        <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Home</FONT></B></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR>
+            <TD colspan="2" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+
+ 
+Copyright 2000, IBM Corporation</TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/registerImg.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/registerImg.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/registerImg.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/registerImg.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,127 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<TITLE>Trade Registration</TITLE>
+<BODY bgcolor="#ffffff" link="#000099">
+<%@ page session="false" %>
+<% 
+String blank = "";
+String fakeCC = "123-fake-ccnum-456";
+String fullname =   request.getParameter ( "Full Name" );
+String snailmail=   request.getParameter ( "snail mail" );
+String email =      request.getParameter ( "email" ); 
+String userID =     request.getParameter ( "user id" ); 
+String money =      request.getParameter ( "money" ); 
+String creditcard = request.getParameter ( "Credit Card Number" );
+String results =   (String) request.getAttribute ( "results" );
+%>
+<TABLE style="font-size: smaller">
+  <TBODY>
+    <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Register</B></FONT></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10"><IMG src="images/tradeLogo.gif" border="0" width="45" height="19"></TD>
+		</TR>
+  </TBODY>
+</TABLE>
+<TABLE width="610" height="30">
+  <TBODY>
+        <TR>
+      <TD align="center"></TD>
+      <TD><FONT color="#ff3333"><%= results==null ? blank : results %></FONT></TD>
+			<TD width="120" align="right"><IMG src="images/graph.gif" width="32" height="32" border="0"></TD>
+		</TR>
+  </TBODY>
+</TABLE>
+<TABLE width="90%">
+  <TBODY>
+    <TR>
+      <TD width="2%" bgcolor="#e7e4e7"></TD>
+      <TD width="98%" colspan="8"><B>Register</B>
+            <HR>
+      </TD>
+    </TR>
+    </TBODY>
+</TABLE>
+<FORM action="app">
+<TABLE width="90%">
+  <TBODY align="right">
+    <TR>
+      <TD width="2%" bgcolor="#e7e4e7" rowspan="11"></TD>
+      <TD width="33%" colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>Full name:</B></TD>
+      <TD width ="20%" colspan="2" align="right"><INPUT size="40" type="text" name="Full Name" value="<%= fullname==null ? blank : fullname %>"></TD>
+      <TD width="2%" bgcolor="#e7e4e7" rowspan="11"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>Address:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="text" name="snail mail" value="<%= snailmail==null ? blank : snailmail %>"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>E-Mail address:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="text" name="email" value="<%= email==null ? blank : email %>"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4">&nbsp;</TD>
+      <TD colspan="2" align="right">&nbsp;</TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>User ID:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="text" name="user id" value="<%= userID==null ? blank : userID %>"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><B><FONT COLOR="#FF0000">*</FONT>Password:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="password" name="passwd"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><B><FONT COLOR="#FF0000">*</FONT>Confirm password:</B></TD>
+      <TD colspan="2" align="right"><INPUT size="40" type="password" name="confirm passwd"></TD>
+    </TR>
+    <TR>
+      <TD colspan="4">&nbsp;</TD>
+      <TD colspan="2" align="right">&nbsp;</TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><FONT COLOR="#FF0000">*</FONT><B>Opening account balance:</B></TD>
+      <TD colspan="2" align="right">$<B> </B><INPUT size="20" type="text" name="money" value='<%= money==null ? "10000" : money %>'></TD>
+    </TR>
+    <TR>
+      <TD colspan="4" align="right"><B><FONT COLOR="#FF0000">*</FONT>Credit card number:</B></TD>
+      <TD colspan="2" align="right">&nbsp;&nbsp;<INPUT size="40" type="text" name="Credit Card Number" value="<%= creditcard==null ? fakeCC : creditcard %>" readonly></TD>
+    </TR>
+    <TR>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"></TD>
+      <TD align="center"><INPUT type="submit" value="Submit Registration"></TD>
+    </TR>
+    <TR>
+      <TD align="right" colspan="6"></TD>
+    </TR>
+    </TBODY>
+</TABLE>
+<INPUT type="hidden" name="action" value="register"></FORM>
+<TABLE height="54" style="font-size: smaller">
+  <TBODY>
+        <TR>
+            <TD colspan="2">
+            <HR>
+            </TD>
+        </TR>
+        <TR>
+            <TD colspan="2"></TD>
+        </TR>
+        <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Register</FONT></B></TD>
+			<TD align="center" bgcolor="#ffffff" width="100" height="10"><IMG src="images/tradeLogo.gif" border="0" width="45" height="19"></TD>
+		</TR>
+        <TR>
+            <TD colspan="2" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+
+ 
+Copyright 2000, IBM Corporation</TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/runStats.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/runStats.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/runStats.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/runStats.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,267 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Welcome to Trade</TITLE>
+</HEAD>
+<BODY bgcolor="#ffffff" link="#000099">
+<%@ page import="org.apache.geronimo.samples.daytrader.*" session="false" isThreadSafe="true" isErrorPage="false" %>
+
+<jsp:useBean class="org.apache.geronimo.samples.daytrader.RunStatsDataBean" id="runStatsData" scope="request" />
+<% 
+double loginPercentage = (double) ((TradeConfig.getScenarioMixes())[TradeConfig.workloadMix][TradeConfig.LOGOUT_OP]) / 100.0;
+double logoutPercentage = (double) ((TradeConfig.getScenarioMixes())[TradeConfig.workloadMix][TradeConfig.LOGOUT_OP]) / 100.0;
+double buyOrderPercentage = (double) ((TradeConfig.getScenarioMixes())[TradeConfig.workloadMix][TradeConfig.BUY_OP]) / 100.0;
+double sellOrderPercentage = (double) ((TradeConfig.getScenarioMixes())[TradeConfig.workloadMix][TradeConfig.SELL_OP]) / 100.0;
+double orderPercentage = buyOrderPercentage + sellOrderPercentage;
+double registerPercentage = (double) ((TradeConfig.getScenarioMixes())[TradeConfig.workloadMix][TradeConfig.REGISTER_OP]) / 100.0;
+                                                            
+int logins = runStatsData.getSumLoginCount()-runStatsData.getTradeUserCount(); //account for each user being logged in up front
+if (logins < 0 ) logins = 0; //no requests before reset
+//double expectedRequests = ((double) logins) / loginPercentage;
+double expectedRequests = (double)TradeConfig.getScenarioCount();
+TradeConfig.setScenarioCount(0);
+
+int verifyPercent = TradeConfig.verifyPercent;
+%>
+<%!// verifies 2 values are w/in tradeConfig.verifyPercent percent
+String verify(double expected, double actual, int verifyPercent)
+{
+	String retVal = "";
+	if ( (expected==0.0) || (actual == 0.0) )
+		return "N/A";
+	double check = (actual / expected) * 100 - 100;
+	//PASS
+	retVal += check +"% ";
+	if ( (check>=(-1.0*verifyPercent)) && (check<=verifyPercent) )
+		retVal += " Pass";
+	else 
+		retVal += " Fail<SUP>4</SUP>";
+	if (check > 0.0)
+		retVal = "+" + retVal;
+//System.out.println("verify --- expected="+expected+" actual="+actual+ " check="+check);		
+	return retVal;
+}
+String verify(int expected, int actual, int verifyPercent)
+{
+	return verify((double)expected, (double)actual, verifyPercent);
+}
+%>
+<DIV align="left">
+
+<TABLE style="font-size: smaller">
+  <TBODY>
+    <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Scenario Runtime Statistics</B></FONT></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+    </TR>
+  </TBODY>
+</TABLE>
+<TABLE width="639" height="30">
+  <TBODY>
+        <TR>
+            <TD width="228"><B><FONT size="-1" color="#cc0000"><% 
+String status;
+status = (String) request.getAttribute("status");
+if ( status != null )out.print(status);
+%></FONT></B></TD>
+            <TD width="202"></TD>
+            <TD width="187" align="right"><FONT size="-1"><A href="config" target="_self">Modify runtime configuration</A></FONT></TD>
+        </TR>
+  </TBODY>
+</TABLE>
+</DIV>
+<TABLE width="645">
+    <TBODY>
+        <TR>
+            <TD valign="top" width="643">
+            <TABLE width="100%">
+                <TBODY>
+                    <TR align="center">
+                        <TD colspan="6">
+                        <CENTER></CENTER>
+                        <TABLE border="1" style="font-size: smaller" cellpadding="2" cellspacing="0">
+                            <COL span="1" align="right">
+                            <COL span="1">
+                            <COL span="3" align="center">
+                            <CAPTION align="bottom"><FONT size="+1"><B>Benchmark scenario statistics</B></FONT></CAPTION>
+                            <TBODY>
+                                <TR bgcolor="#f3f3f3">
+                                    <TD colspan="2" align="center"><B>Benchmark runtime configuration summary</B></TD>
+                                    <TD colspan="3"><B>Value </B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="2"><A href="docs/glossary.html">Run-Time Mode</A></TD>
+                                    <TD colspan="3"><B><%= (TradeConfig.getRunTimeModeNames())[TradeConfig.runTimeMode] %></B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="2"><A href="docs/glossary.html">Order-Processing Mode</A></TD>
+                                    <TD colspan="3"><B><%= (TradeConfig.getOrderProcessingModeNames())[TradeConfig.orderProcessingMode]%></B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="2"><A href="docs/glossary.html">Scenario Workload Mix</A></TD>
+                                    <TD colspan="3"><B><%= (TradeConfig.getWorkloadMixNames())[TradeConfig.workloadMix]%></B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="2"><A href="docs/glossary.html">Web Interface</A></TD>
+                                    <TD colspan="3"><B><%= (TradeConfig.getWebInterfaceNames())[TradeConfig.webInterface]%></B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="2"><A href="docs/glossary.html">Active Traders / Trade User population</A></TD>
+                                    <TD colspan="3"><B><%= runStatsData.getTradeUserCount() %> / <%= TradeConfig.getMAX_USERS() %> </B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="2"><A href="docs/glossary.html">Active Stocks / Trade Stock population</A></TD>
+                                    <TD colspan="3"><B><%= TradeConfig.getMAX_QUOTES() %>  / <%= runStatsData.getTradeStockCount() %></B></TD>
+                                </TR>
+                                <TR>
+                                    <TD colspan="5" align="center" bgcolor="#f3f3f3"><B>Benchmark scenario verification</B></TD>
+                                </TR>
+                                <TR bgcolor="#fafcb6" align="center">
+                                    <TD width="109"><B>Run Statistic</B></TD>
+                                    <TD><B>Scenario verification test</B></TD>
+                                    <TD><B>Expected Value</B></TD>
+                                    <TD width="25"><B>Actual Value</B></TD>
+                                    <TD><B>Pass/Fail</B></TD>
+                                </TR>
+                                <TR>
+                                    <TD>Active Stocks</TD>
+                                    <TD>Active stocks should generally equal the db population of stocks</TD>
+                                    <TD><%= runStatsData.getTradeStockCount() %></TD>
+                                    <TD><B><%= TradeConfig.getMAX_QUOTES() %></B></TD>
+                                    <TD><%= ( runStatsData.getTradeStockCount() == TradeConfig.getMAX_QUOTES() ) ? "Pass":"Warn" %></TD>
+                                </TR>                               
+                                <TR bgcolor="#ffffff">
+                                    <TD><A href="docs/glossary.html">Active Traders</A></TD>
+                                    <TD>Active traders should generally equal the db population of traders</TD>
+                                    <TD><%= runStatsData.getTradeUserCount() %></TD>
+                                    <TD><B><%= TradeConfig.getMAX_USERS() %></B></TD>
+                                    <TD><%= ( runStatsData.getTradeUserCount() == TradeConfig.getMAX_USERS() ) ? "Pass":"Warn" %></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Estimated total requests</A></TD>
+                                    <TD>Actual benchmark scenario requests should be within +/- 2% of the estimated  number of requests in the last benchmark run to pass.</TD>
+                                    <TD><%= expectedRequests %></TD>
+                                    <TD><B>see</B><B><SUP>2</SUP></B></TD>
+                                    <TD>see<SUP>2</SUP></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">New Users Registered </A></TD>
+                                    <TD><%= registerPercentage * 100 %>% of expected requests (<%= registerPercentage%> * <%= expectedRequests %> )</TD>
+                                    <TD><%= registerPercentage * expectedRequests %></TD>
+                                    <TD><B><%= runStatsData.getNewUserCount() %></B></TD>
+                                    <TD><%= verify(registerPercentage * expectedRequests, (double)runStatsData.getNewUserCount(), verifyPercent) %></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Logins </A></TD>
+                                    <TD><%= loginPercentage * 100 %>% of expected requests (<%= loginPercentage%> * <%= expectedRequests %> ) + initial login</TD>
+                                    <TD><%= loginPercentage * expectedRequests + runStatsData.getTradeUserCount()  %></TD>
+                                    <TD><B><%= runStatsData.getSumLoginCount() + runStatsData.getTradeUserCount()  %></B></TD>
+                                    <TD><%= verify((double)loginPercentage * expectedRequests, (double)runStatsData.getSumLoginCount(), verifyPercent)%></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Logouts </A></TD>
+                                    <TD>#logouts must be &gt;= #logins-active traders ( <%= runStatsData.getSumLoginCount() %> - <%= TradeConfig.getMAX_USERS() %> )</TD>
+                                    <TD><%= runStatsData.getSumLoginCount()- TradeConfig.getMAX_USERS() %></TD>
+                                    <TD><B><%= runStatsData.getSumLogoutCount() %></B></TD>
+                                    <TD><%= (runStatsData.getSumLogoutCount() >= (runStatsData.getSumLoginCount()- TradeConfig.getMAX_USERS())) ? "Pass" : "Fail<SUP>4</SUP>" %> </TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">User Holdings </A></TD>
+                                    <TD>Trade users own an average of 5 holdings, 5* total Users = ( 5 * <%= runStatsData.getTradeUserCount() %>)</TD>
+                                    <TD> <%= 5 * runStatsData.getTradeUserCount() %></TD>
+                                    <TD><B><%= runStatsData.getHoldingCount() %></B></TD>
+                                    <TD><%= verify( 5 * runStatsData.getTradeUserCount(), runStatsData.getHoldingCount(), verifyPercent ) %></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Buy Order Count </A></TD>
+                                    <TD><%= buyOrderPercentage * 100 %>% of expected requests (<%= buyOrderPercentage%> * <%= expectedRequests %> ) + current holdings count</TD>
+                                    <TD><%= buyOrderPercentage * expectedRequests + runStatsData.getHoldingCount() %></TD>
+                                    <TD><B><%= runStatsData.getBuyOrderCount() %></B></TD>
+                                    <TD><%= verify(buyOrderPercentage * expectedRequests + runStatsData.getHoldingCount() , (double)runStatsData.getBuyOrderCount(), verifyPercent)%></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Sell Order Count </A></TD>
+                                    <TD><%= sellOrderPercentage * 100 %>% of expected requests (<%= sellOrderPercentage%> * <%= expectedRequests %> )</TD>
+                                    <TD><%= sellOrderPercentage * expectedRequests %></TD>
+                                    <TD><B><%= runStatsData.getSellOrderCount() %></B></TD>
+                                    <TD><%= verify(sellOrderPercentage * expectedRequests, (double)runStatsData.getSellOrderCount(), verifyPercent)%></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Total Order Count </A></TD>
+                                    <TD><%= orderPercentage * 100 %>% of expected requests (<%= orderPercentage%> * <%= expectedRequests %> ) + current holdings count</TD>
+                                    <TD><%= orderPercentage * expectedRequests + runStatsData.getHoldingCount() %></TD>
+                                    <TD><B><%= runStatsData.getOrderCount() %></B></TD>
+                                    <TD><%= verify(orderPercentage * expectedRequests + runStatsData.getHoldingCount(), (double)runStatsData.getOrderCount(), verifyPercent)%></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Open Orders </A></TD>
+                                    <TD>All orders should be completed before reset<SUP>3</SUP></TD>
+                                    <TD>0</TD>
+                                    <TD><B><%= runStatsData.getOpenOrderCount() %></B></TD>
+                                    <TD><%= (runStatsData.getOpenOrderCount() > 0) ? "Fail<SUP>4</SUP>" : "Pass" %></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Cancelled Orders </A></TD>
+                                    <TD>Orders are cancelled if an error is encountered during order processing.</TD>
+                                    <TD>0</TD>
+                                    <TD><B><%= runStatsData.getCancelledOrderCount() %></B></TD>
+                                    <TD><%= (runStatsData.getCancelledOrderCount() > 0) ? "Fail<SUP>4</SUP>" : "Pass" %></TD>
+                                </TR>
+                                <TR>
+                                    <TD><A href="docs/glossary.html">Orders remaining after reset </A></TD>
+                                    <TD>After Trade reset, each user should carry an average of 5 orders in the database. 5* total Users = (5 * <%= runStatsData.getTradeUserCount() %>)</TD>
+                                    <TD><%= 5 * runStatsData.getTradeUserCount() %></TD>
+                                    <TD><B><%= runStatsData.getOrderCount()-runStatsData.getDeletedOrderCount() %></B></TD>
+                                    <TD><%=  verify( 5 * runStatsData.getTradeUserCount(), runStatsData.getOrderCount()-runStatsData.getDeletedOrderCount(), verifyPercent ) %></TD>
+                                </TR>
+                            </TBODY>
+                        </TABLE>
+                        <CENTER>
+                        <DIV align="left"></DIV>
+                        </CENTER>
+                        </TD>
+                    </TR>
+                    <TR>
+                        <TD colspan="6">
+                        <OL>
+                            <LI><FONT size="-1"> Benchmark verification tests require a Trade Reset between each benchmark run.</FONT></LI>
+                            <LI><FONT size="-1">The expected value of benchmark requests is computed based on the the count from the Web application since the last Trade reset.The actual value of benchmark request requires user verification and may be incorrect for a cluster.</FONT></LI>
+                            <LI><FONT size="-1">Orders are processed asynchronously in Trade. Therefore, processing may continue beyond the end of a benchmark run. Trade Reset should not be invoked until processing is completed.</FONT></LI>
+                            <LI><FONT size="-1">Actual values must be within</FONT><FONT size="-1" color="#cc0000"><FONT size="-1" color="#cc0000"><B> <FONT size="-1" color="#cc0000"><%= TradeConfig.verifyPercent %></FONT>% </B></FONT></FONT><FONT size="-1">of corresponding estimated values to pass verification.</FONT></LI>
+                        </OL>
+                        </TD>
+                    </TR>
+               </TBODY>
+            </TABLE>
+            </TD>
+        </TR>
+    </TBODY>
+</TABLE>
+<FORM action="config" method="POST"><INPUT type="hidden" name="action" value="updateConfig">
+<TABLE height="54" style="font-size: smaller">
+  <TBODY>
+        <TR>
+            <TD colspan="2">
+            <HR>
+            </TD>
+        </TR>
+        <TR>
+            <TD colspan="2"></TD>
+        </TR>
+        <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Scenario Runtime Statistics</FONT></B></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR>
+            <TD colspan="2" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+
+ 
+Copyright 2000, IBM Corporation</TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</FORM>
+</BODY>
+</HTML>

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/sample.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/sample.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/sample.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/sample.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,10 @@
+<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
+<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
+<%@ taglib prefix="x" uri="http://java.sun.com/jstl/xml" %>
+<%@ taglib prefix="sql" uri="http://java.sun.com/jstl/sql" %>
+<jsp:useBean id="now" class="java.util.Date" />
+<html>
+<body>
+Hello world JSP on<fmt:formatDate value="${now}" dateStyle="full" />
+</body>
+</html>

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/style.css
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/style.css?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/style.css (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/style.css Wed Oct  5 21:34:32 2005
@@ -0,0 +1,8 @@
+A:HOVER {
+	text-decoration: underline; color: red;
+}
+
+A:ACTIVE {
+	color: red;
+	font-weight: bold
+}
\ No newline at end of file

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/topBanner.html
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/topBanner.html?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/topBanner.html (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/topBanner.html Wed Oct  5 21:34:32 2005
@@ -0,0 +1,26 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<META http-equiv="Content-Style-Type" content="text/css">
+<BASE target="_self">
+<TITLE></TITLE>
+</head>
+<body bgcolor="#cccccc">
+<TABLE width="814" bgcolor="#000000" background="images/IBMBackGround1.gif">
+  <TBODY>
+    <TR>
+            <TD width="130" bgcolor="#000000" background="images/IBMBackGround1.gif" rowspan="2" align="center"><IMG src="images/lanim.gif" width="150" height="47" border="0" vspace="10"><FONT size="-2" color="#FFCC00"><BR>
+            &nbsp;<B>Performance Application&nbsp;&nbsp;</B></FONT></TD>
+            <TD valign="middle" bgcolor="#0080c0" background="images/IBMBackGround1.gif" colspan="2" align="right" height="63"><IMG src="images/topline.jpg" border="0" height="3" width="428"><BR>
+            <IMG src="images/tradeLogo.gif" border="0" width="97" height="41" align="top"></TD>
+        </TR>
+    <TR>
+            <TD align="center" bgcolor="#000000" height="15" width="440"><FONT size="-1"><B><I><FONT face="Arial"><FONT color="#FFFFFF">WebSphere Performance Benchmark Sample</FONT></FONT></I></B></FONT></TD>
+            <TD align="right" bgcolor="#ffffff" height="15" width="112"><IMG src="images/WEBSPHERE_18P_UNIX.GIF" width="113" height="18" border="0"></TD>
+        </TR>
+  </TBODY>
+</TABLE>
+</body>
+</html>

Propchange: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/topBanner.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/tradehome.jsp
URL: http://svn.apache.org/viewcvs/geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/tradehome.jsp?rev=306524&view=auto
==============================================================================
--- geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/tradehome.jsp (added)
+++ geronimo/trunk/sandbox/daytrader/modules/web/src/webapp/tradehome.jsp Wed Oct  5 21:34:32 2005
@@ -0,0 +1,203 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+<META name="GENERATOR" content="IBM WebSphere Page Designer V3.5.1 for Windows">
+<META http-equiv="Content-Style-Type" content="text/css">
+<TITLE>Welcome to Trade</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.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="accountData" type="org.apache.geronimo.samples.daytrader.AccountDataBean" scope="request" />
+<jsp:useBean id="holdingDataBeans" type="java.util.Collection" scope="request"/>
+<TABLE height="54">
+  <TBODY>
+    <TR>
+            <TD bgcolor="#8080c0" align="left" width="500" height="10" colspan="5"><FONT color="#ffffff"><B>Trade Home</B></FONT></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR align="center">
+            <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="636">
+    <TBODY>
+        <TR>
+            <TD valign="top" width="377">
+            <TABLE width="384">
+                <TBODY>
+                    <TR>
+                        <TD colspan="3"><B>Welcome &nbsp;<%= accountData.getProfileID() %>,</B></TD>
+                    </TR>
+                    <TR>
+                        <TD width="133"></TD>
+                        <TD width="22"></TD>
+                        <TD width="212"></TD>
+                    </TR>
+                    <TR>
+                        <TD colspan="3" align="left" bgcolor="#cccccc"><B> User Statistics </B></TD>
+                    </TR>
+                    <TR>
+                        <TD align="right" valign="top" width="133"> <A href="docs/glossary.html">account ID:<BR>
+                        </A><A href="docs/glossary.html">account created:</A><BR>
+                         <A href="docs/glossary.html">total logins:</A><BR>
+                        <A href="docs/glossary.html">session created:</A><BR>
+                        </TD>
+                        <TD width="22"></TD>
+                        <TD align="left" width="212"> <%= accountData.getAccountID()
+%><BR>
+                        <%= accountData.getCreationDate()
+%><BR>
+                        <%= accountData.getLoginCount()
+%><BR>
+                        <%= (java.util.Date) session.getAttribute("sessionCreationDate")
+%><BR>
+                        </TD>
+                    </TR>
+                    <TR>
+                        <TD width="133"></TD>
+                        <TD width="22"></TD>
+                        <TD width="212"></TD>
+                    </TR>
+                    <TR>
+                        <TD colspan="3" bgcolor="#cccccc"> <B>Account Summary </B></TD>
+                    </TR>
+                    <TR>
+                        <TD align="right" valign="top" width="133"><A href="docs/glossary.html"> cash balance:</A><BR>
+                        <A href="docs/glossary.html">number of holdings:</A><BR>
+                        <A href="docs/glossary.html">total of holdings:<BR>
+                        sum of cash/holdings<BR>
+                        opening balance:<BR>
+                        </A>
+                        <HR>
+                        </TD>
+                        <TD width="22"></TD>
+                        <TD align="left" valign="top" width="212"> 
+                        <% 
+                        	BigDecimal openBalance = accountData.getOpenBalance();
+                        	BigDecimal balance = accountData.getBalance();
+                        	BigDecimal holdingsTotal = FinancialUtils.computeHoldingsTotal(holdingDataBeans);
+                        	BigDecimal sumOfCashHoldings = balance.add(holdingsTotal);
+                        	BigDecimal gain = FinancialUtils.computeGain(sumOfCashHoldings, openBalance);
+							BigDecimal gainPercent = FinancialUtils.computeGainPercent(sumOfCashHoldings, openBalance);
+                         %>$ <%= balance %><BR>
+                        <%= holdingDataBeans.size()%><BR>
+                        $ <%= holdingsTotal %><BR>
+                        $ <%= sumOfCashHoldings %><BR>
+                        $ <%= openBalance%><BR>
+                        
+                        <HR>
+                        </TD>
+                    </TR>
+                    <TR>
+                        <TD valign="top" align="right"><A href="docs/glossary.html">current gain/(loss):</A></TD>
+                        <TD></TD>
+                        <TD valign="top">
+                         $
+						<B><%= FinancialUtils.printGainHTML(gain) %> <%= FinancialUtils.printGainPercentHTML(gainPercent) %></B></TD>
+                    </TR>
+                </TBODY>
+            </TABLE>
+            </TD>
+            <TD align="center" valign="top" bgcolor="#ffffff" width="236">
+			<jsp:include page="marketSummary.jsp" />
+
+            <BR>
+            </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="#8080c0" align="left" width="500" height="10"><B><FONT color="#ffffff">Trade Home</FONT></B></TD>
+            <TD align="center" bgcolor="#000000" width="100" height="10"><FONT color="#ffffff"><B>Trade</B></FONT></TD>
+        </TR>
+        <TR>
+            <TD colspan="2" align="center"> Created&nbsp;with&nbsp;IBM WebSphere Application Server and WebSphere Studio Application Developer<BR>
+
+ 
+Copyright 2000, IBM Corporation</TD>
+        </TR>
+    </TBODY>
+</TABLE>
+</BODY>
+</HTML>