<動作環境>
JDK1.3で動作確認
IE5.0、NN4.7で動作確認
<概要> HTMLのフレームに設定されたパラメータをサーブレットで取得し、その結果を同一フレームへ出力する。 詳細は、以下の<サンプルソース一覧>をご覧ください。 <ファイル内容> FrameSet.html : フレーム定義。 UPPER.html : フレーム上部用。サーブレットに渡すパラメータ所有。 LOWER.html : フレーム下部用。 HelloWorld.class : UPPER.html内のパラメータを取得し、結果をフレームへ出力する。 ※UPPER.htmlのパラメータ(当サンプルでは"Hello World !"の部分)を変更することで、 ブラウザへ出力される文字も変化します。 <動作イメージ>
<サンプルソース一覧>
FrameSet.html
<HTML> <HEAD> <TITLE> Frame Set Sample </TITLE> </HEAD> <FRAMESET ROWS="20%, 80%"> <FRAME SRC="UPPER.html"> <FRAME SRC="LOWER.html"> </FRAMESET> </HTML> |
UPPER.html
<HTML> <HEAD> </HEAD> <Script Language="JavaScript"> <!-- function sample() { document.sample.message.value = "Hello World !"; document.sample.submit(); } --> </Script> <BODY onLoad="sample()"> <FORM name="sample" method = "POST" action="サーブレットのURLを指定"> <INPUT type="hidden" name="message" value=""> </FORM> </BODY> </HTML> |
LOWER.html
<HTML> <HEAD> </HEAD> <BODY> <CENTER> LOWER(フレーム下部) </CENTER> </BODY> </HTML> |
HelloWorld.java(コンパイル後、HelloWorld.classをサーバへ保存)
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWorld extends HttpServlet{ public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //パラメータ取得 String strMsg = request.getParameter("message"); //コンテンツタイプの文字セット指定 response.setContentType("text/html"); //ブラウザ送信用 PrintWriter writer = response.getWriter(); //ブラウザへ送信するタグ,文字列 String strBuf = "<HTML><HEAD></HEAD>"; strBuf += "<BODY><H1><CENTER>"; strBuf += strMsg; strBuf += "</CENTER></H1></BODY>"; strBuf += "</HTML>"; //ブラウザへ送信完了 writer.println(strBuf); } } |