■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 2008年04月13日 楽しいJava講座 - 初心者から達人へのパスポート vol.099 セルゲイ・ランダウ バックナンバー: http://www.flsi.co.jp/Java_text/ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ [このメールマガジンは、画面を最大化して見てください。] ======================================================== ◆ 01.Tomcatのアプリケーション開発 ======================================================== 最後に下記のようなuserInfo.jspをitemSelect.htmlと同じ場所に 作成してください。 -------------------------------------------------------- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="Shift_JIS" %> <HTML> <HEAD> <TITLE>ユーザー登録完了</TITLE> </HEAD> <BODY bgcolor="#77ffff" text="#fa5a00"> <%@ page import="jp.co.flsi.lecture.webapp.entity.*" %> <jsp:useBean class="jp.co.flsi.lecture.webapp.entity.Customer" id="CUSTOMER" scope="session" /> <H1>ユーザー登録完了</H1> ユーザーID(<%= CUSTOMER.getNum() %>)の登録が完了しました。 <BR> <BR> 商品の検索のページに進むには「商品を検索する」ボタンをクリックしてください。 <BR> 注文手続きを進めるには「注文手続きに進む」ボタンをクリックしてください。 <BR> <FORM action="../itemSelect.jsp" method="POST"> <INPUT TYPE="submit" NAME="shopping" VALUE="商品を検索する"> </FORM> <FORM action="../confirmOrder.jsp" method="POST"> <INPUT TYPE="submit" NAME="checkout" VALUE="注文手続きに進む"> </FORM> <BR> <BR> </FORM> </BODY> </HTML> -------------------------------------------------------- ここでは、「商品を検索する」ボタン、「注文手続きに進む」ボタンの どちらのボタンをクリックしてもそれぞれJSPを呼び出すようにしています。 普通なら、このように直接JSPを呼び出すのではなく、Webページからは サーブレットを呼び出して、サーブレットに処理の流れをコントロールして もらうべきなのですが、ここでは、(Webページから直接JSPを呼び出すことも できるという)技術の説明のために直接JSPを呼び出すようにしています。 では、ここで呼び出されるitemSelect.jspを作成しましょう。 itemSelect.jspは下記のように作成して下さい。 (いつものようにitemSelect.htmlと同じ場所に作成します。) -------------------------------------------------------- <%@ page language="java" contentType="text/html; charset=Shift_JIS" pageEncoding="Shift_JIS" %> <HTML> <HEAD> <TITLE>商品の検索</TITLE> </HEAD> <BODY bgcolor="#77ffff" text="#fa5a00"> <H1>商品の検索</H1> <%@ page import="jp.co.flsi.lecture.webapp.entity.*" %> <jsp:useBean class="jp.co.flsi.lecture.webapp.entity.Customer" id="CUSTOMER" scope="session" /> <%= CUSTOMER.getName() %>様、INTSHOPへようこそ。 <BR> <BR> <FORM action="servlet/items" method="POST"> キーワード(商品名の一部)とカテゴリーを入力し、「送信」ボタンをクリックしてください。 <BR> <BR> キーワード:<INPUT TYPE="text" NAME="itemName" VALUE="" SIZE=20> <BR> カテゴリー:<INPUT TYPE="text" NAME="category" VALUE="" SIZE=20> <BR> <BR> <INPUT TYPE="submit" NAME="sumit" VALUE="送信"> </FORM> </BODY> </HTML> -------------------------------------------------------- confirmOrder.jspのほうは既に作成してありますね。 では、続いて、既存のWebページを修正して、ユーザー登録のページを呼び出せる ようにしましょう。 まず、order.jspを下記のように編集し、ユーザー登録が済んでいない人に ユーザー登録を促すようにしましょう。 -------------------------------------------------------- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="Shift_JIS" %> <HTML> <HEAD> <TITLE>購入手続き</TITLE> </HEAD> <BODY bgcolor="#77ffff" text="#fa5a00"> <H1>購入する商品</H1> <FORM action="confirmorder" method="POST"> <TABLE border="1" width="100%"> <TBODY> <TR> <TH>商品番号</TH> <TH>商品名</TH> <TH>価格</TH> <TH>カテゴリー</TH> <TH>購入個数</TH> </TR> <%@ page import="jp.co.flsi.lecture.webapp.entity.*" %> <% int totalPrice = 0; %> <jsp:useBean class="jp.co.flsi.lecture.webapp.entity.Order" id="ORDER" scope="session" /> <% OrderItem anOrderItem; for (int i = ORDER.getOrderItems().size() - 1; i >= 0 ; i--) { anOrderItem = ORDER.getOrderItems().elementAt(i); %> <TR> <TD><%= anOrderItem.getNum() %></TD> <TD><%= anOrderItem.getName() %></TD> <TD><%= anOrderItem.getPrice() %>円</TD> <TD><%= anOrderItem.getCategory() %></TD> <TD align="right"><%= anOrderItem.getOrderQuantity() %></TD> </TR> <% totalPrice += anOrderItem.getPrice() * anOrderItem.getOrderQuantity(); } %> </TBODY> </TABLE> <BR> <TABLE border="1"> <TR> <TH>合計金額:</TH> <TH><%= totalPrice %>円</TH> </TR> </TABLE> <BR> <BR> <A href="../userReg.jsp"> ユーザー登録がお済みでない方は、先にここをクリックしてユーザー登録を行ってください。 </A> <BR> <BR> ユーザーIDとパスワードをご入力ください。 <TABLE border="0"> <TR> <TH>ユーザーID:</TH> <TD><INPUT TYPE="text" NAME="userId" VALUE="" SIZE=20></TD> </TR> <TR> <TH>パスワード:</TH> <TD><INPUT TYPE="password" NAME="password" VALUE="" SIZE=20></TD> </TR> </TABLE> <BR> <BR> <INPUT TYPE="submit" NAME="confirmOrder" VALUE="最終購入確認画面に進む"> </FORM> </BODY> </HTML> -------------------------------------------------------- ここでは、 -------------------------------------------------------- <BR> <A href="../userReg.jsp"> ユーザー登録がお済みでない方は、先にここをクリックしてユーザー登録を行ってください。 </A> <BR> -------------------------------------------------------- という行が追加されただけですね。 では、テストしてみましょう。 EclipseでTomcatを起動し、Webブラウザーを起動して、下記のURLを 入力してください。 http://localhost:8080/JStudy2/itemSelect.html (1) 「キーワード」欄、「カテゴリー」欄ともに何も入力せずに 「送信」ボタンをクリックしてみてください。 (2) 次のページ(商品リストのページ)で商品をどれか(たとえば「製品001」) 選択(チェック・マークを入れる)し、「選択した商品をカートに入れる」 ボタンをクリックします。 (3) 選択した商品が次のページ(ショッピング・カートのページ)で リストされていることを確認し、「選択した商品を購入する」ボタンを クリックします。 (4) 次のページ(購入手続きのページ)で、 「ユーザー登録がお済みでない方は、先にここをクリックしてユーザー登録を行ってください。 」 をクリックします。 (5) 次のページ(ユーザー登録のページ)で、ユーザーIDにTTTT0、パスワードはxxxxx 、氏名に山本山太郎、郵便番号は222-2222、住所はほにゃら県ほにゃら町1-1-1と入力 して、「規約に同意しユーザー登録をする」ボタンをクリックしましょう。 (6) 次のページ(ユーザー登録のページ)で「注文手続きに進む」ボタンをクリック しましょう。 (7) 次のページで、購入する商品がちゃんとリストされていることを確認し、 商品の送付先を確認しましょう。 おやおや、住所、氏名が文字化けしていますね。 問題:これはなぜでしょう。 答えは次回。 (次回に続く) では、今日はここまでにします。 何か、わからないところがありましたら、下記のWebページまで質問を お寄せください。 ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ★ホームページ: http://www.flsi.co.jp/Java_text/ ★このメールマガジンは 「まぐまぐ(http://www.mag2.com)」 を利用して発行しています。 ★バックナンバーは http://www.flsi.co.jp/Java_text/ にあります。 ★このメールマガジンの登録/解除は下記Webページでできます。 http://www.mag2.com/m/0000193915.html ★このメールマガジンへの質問は下記Webページにて受け付けて います。わからない所がありましたら、どしどしと質問をお寄 せください。 http://www.flsi.co.jp/Java_text/ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ Copyright (C) 2008 Future Lifestyle Inc. 不許無断複製 |