1. Top » 
  2. Tomcat

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  • Genre:

【Java】複数のサーブレットを組み合わせるための画面遷移の話

サーブレットから他のリソースへリクエストを転送することをディスパッチといいます。
英語の綴りはdispatchです。
リソースとは平たく言えば、他のサーブレット、JSP、HTMLなどのことです。
サーブレットではjavax.servlet.RequestDispatcherインタフェースによってディスパッチを行います。

ところでディスパッチにはフォワードインクルードの二つがあります。
フォワードの場合、転送先のリソースに出力を任せます。
インクルードの場合、転送先のリソースの出力をインクルードします。
それぞれforward/includeのメソッドで行い、request/responseを渡します。
ここではよく使うforwardの方を使ってみます。

サーブレット→サーブレット
hogeプロジェクト→Java Resources:src→hoge右クリック→ForwardServlet1.java
hogeプロジェクト→Java Resources:src→hoge右クリック→ForwardServlet2.java

ForwardServlet1の方には次のように書きます。
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
RequestDispatcher dis = request.getRequestDispatcher("/ForwardServlet2");
dis.forward(request, response);
}


ForwardServlet2の方には次のように書きます。
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/plain; charset=Windows-31J");
response.getWriter().println("Servlet2からの出力");
}


実行はForwardServlet1の方を実行します。右クリック→Run As→Run on Serverです。
すると次のように実行されます。

j2ee_08_01.jpg

このようにサーブレット2からの出力が表示されます。


ところで
サーブレット→JSPの場合、リンク(Stringで与えられている)をjspへのリンクに変えればいい。
またフォワードされる前のサーブレットからは出力処理をしません。
出力処理、つまりresponseへの処理はバッファに一度蓄えられているのですが
フォワードしたときにバッファがクリアされてしまって反映されません。
ですので出力処理はすべてフォワードされた後のサーブレットで行います。



category of Haskell:
Java】サーブレット/JSPを書く勉強をするための環境について知っていること(一回目)
Java】サーブレット/JSPを書く勉強をするための環境について知っていること(二回目)
Java】開発環境を活用してサーブレットを書く。
Java】サーブレットの基本的な話をする
【Java】JSPの話へと移る
【Java】JSPからサーブレットを呼び出す
【Java】パラメータを渡す
スポンサーサイト

【Java】開発環境を活用してサーブレットを書く。

前々回ダウンロードした環境を前回設定しました。
今回は実際にそれらを利用してサーブレット/JSPを書いていきます。
とりあえずEclipseを起動させ、通常の状態にしておきます。

File→New→Other→Web→Dynamic Web Projectと進みます。

j2ee_03_01.jpg


次に、ProjectNameを入力します。
ここではよく使われる適当な名前「hoge」とでも設定しておきます。好きなモノでいいです。
その他の項目はデフォルトのままでFinishです。

j2ee_03_02.jpg


さて、Eclipseの通常画面に戻りました。
左側に出ているProjectExplorerの中にhogeというプロジェクトが出来ていることを確認します。
ProjectExplorerが出ていない場合は、Serverの時と同様で、Window→Shor Viewから表示させてください。
(たいていのモノを消してしまった場合、Window→Show Viewからもう一度表示させられます。)

また右上の部分でJava EEが選ばれていることも確認しておいてください。
この場所でメニューやボタンなどの配置をそれぞれのモードに変えることが出来ます。
よく使うモノとしてはJava、JavaEE、デバッグなどです。

j2ee_03_03.jpg


さて、プロジェクトhogeを右クリック→New→Servletと選択します。

j2ee_03_04.jpg


出てくるダイアログで作成するサーブレットの名前等の設定をします。ここでは

Java Package:hoge
ClassName:HelloServlet


とします。

j2ee_03_05.jpg



その後Finishとすると、いわゆるサーブレットのひな形が作成されて表示されます。
見てみましょう。

j2ee_03_06.jpg


さて、その中にはdoGetというメソッドが自動的に作成されていると思います。
このdoGetというメソッドがサーブレットのもっとも基本的なメソッドとなります。
ここを次のように書き直していきましょう。ただし、ソースファイルの先頭に

import java.io.PrintWriter;


を追加するのを忘れずに。

    protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html; charset=Windows-31J");
PrintWriter out = response.getWriter();

out.println("");
out.println(" ");
out.println("

Title

");
out.println("

");
out.println("Text output
");
out.println("日本語の例
");
out.println("

");
out.println("
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。
");
out.println(" ");

}



Eclipseの場合、Ctrl-Sで上書き保存をするときに自動的にチェックされます。
特に赤色の×が周辺になければエラーがないコードということになります。
またCtrl+Shift+Fでコードを見やすいように整形することも出来ます。
(整形方法については自分で設定も出来ます。)

さて、このファイルはhogeプロジェクトのどこに保存されているのか言っていませんでした。
これはhoge→Java Resources: src→hoge→HelloServlet.javaというように見ることが出来ます。
HelloServletがファイル名、その前のhogeがダイアログで決めたパッケージ名です。


それではこのサーブレットを実行します。
上のようにして表示させたHelloServletを右クリック→Run As→Run on Serverを選びます。
初回実行時、どのサーバを用いるか聞かれるので、自分で用意したServerを選択します。
このダイアログ中、現在のプロジェクトは必ずこのServerを使うといったチェックボックスがありますから
チェックしておくと、毎回ダイアログが出なくなり便利です。


実行させると下の方にTomcatの起動メッセージが出ます。
すでにTomcatを起動していた場合、再起動するかどうかが問われますので
一応再起動しておくといろいろ安心です。

Tomcatが起動すると、内部ブラウザと呼ばれる確認用のブラウザが新しいタブで開かれます。
そこで実行結果を確認しましょう。

j2ee_03_07.jpg


おおおぉ。打ち込んだモノが出力されました。


ここまで非常に簡単ながら


  • 開発環境の用意

  • 開発環境の起動と準備

  • サーバの作り方

  • プロジェクトの作り方

  • サーブレットの作り方

  • サーブレットの実行



などを見てきました。
いかがでしたでしょうか。

次回はもう少し詳しく説明するか
もしくはせっかく準備しているので、データベース関連の話を絡めていきます。



category of Java:
【Java】サーブレット/JSPを書く勉強をするための環境について知っていること(一回目)
【Java】サーブレット/JSPを書く勉強をするための環境について知っていること(二回目)

【Java】サーブレット/JSPを書く勉強をするための環境について知っていること(二回目)

さて、前回の記事で環境をダウンロードして、解凍するまできました。
今回はこれを使って開発のテストを行っていきます。

1.まずはじめに
まずはじめにEclipseを立ち上げる。
(次のようなスプラッシュウィンドウが出る。表示はEclipseのバージョンによって異なる)
j2ee_02_01.jpg

初回起動時、次のようにどこにファイルなどを保存するかの指定が出来る。
これをWorkspaceといいます。前回作ったフォルダjavasrcを指定する。
また左下のチェックボックスにチェックを付けておくと、この場所で固定されます。
二回目以降も聞かれるのは多少面倒なので、とりあえず固定しておくといいです。
j2ee_02_02.jpg

さて、次のような画面が初期画面です。昔と比べて少し変わりましたね。
この画面に来たら、とりあえず右上の矢印を選んでください。Workbenchへ飛びます。
ワークベンチというのは、いわゆるプログラムを開発する画面のことです。
j2ee_02_03.jpg

そして次のようになります。ここまで来ると最初の段階が終わりです。
j2ee_02_04.jpg


2.Tomcatの設定をする
次にEclipseからTomcatをうまく利用するために設定する。
まずFile→New→Otherと進む。
j2ee_02_05.jpg

するとダイアログが出てくるので、この中のServerを選んでNextへ。
j2ee_02_06.jpg

Next後、Serverの種類としてApacheからTomcatのv5.5を選びNextです。
j2ee_02_07.jpg

基本的に設定はデフォルトでいいのですが、Installed Directoryとして
Apache Tomcat v5.5をダウンロードして解凍した場所を指定しておく。
j2ee_02_08.jpg

こうすることで下のView内のServerに今のServerが出てきます。
出てきていない場合はWindows→Show Vier→Serverを選んで出しておきます。
j2ee_02_13.jpg

ここからサーバを右クリックし、Startを選択します。
初回起動時、次のようにFirewallに引っかかるというメッセージが出るので、ブロックを解除します。
j2ee_02_14.jpg

ブロックを解除した後、再び右クリック→Restartとします。
その後ブラウザにてhttp://localhost:8080/にアクセスすると次のような画面が出ます。
(もしかしたら真っ白ページかもしれません)
いずれにしてもTomcatが起動していることが分かります。
j2ee_02_15.jpg

以上で基本設定を終わります。
SqliteやJDBCドライバはすぐには利用しないのでとりあえず保留です。
次回は実際にサーブレットとJSPを書きます。



category of Java:
【Java】サーブレット/JSPを書く勉強をするための環境について知っていること(一回目)

Page Top

訪問者

お引っこし。 http://parabola.sblog.jp/

プロフィール

parabola0

Author:parabola0
Twitter用ですが…。
プロフィール

最新記事
最新コメント
最新トラックバック
カテゴリ
月別アーカイブ
検索フォーム
リンク

このブログをリンクに追加する

QRコード
QRコード
RSSリンクの表示
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。