Hello Worldを出力する。

やはりはじめはHello Worldに限ります。
営業やめて初めてプログラミングしたコードに相当愛着があるというか
damePGはこれをすると
初めてプログラミングした時のことを思い出します。


JavaHello Worldしましたが、初めて動いたときは
「???????・・・・・だから何よ!!」
って思ってましたね。


いろんな言語でやってみますが、あの時の風景が
Hello Worldで思い出し
初心をおもいだします。


まぁ余談でしたが、早速やります。
今回参考にしたのはGoogleが提供している


「Getting Started: Java」
http://code.google.com/intl/ja/appengine/docs/java/gettingstarted/


いわばApp Engine の説明書だ。
これを書いているときには英語版しか出てません(2009/04/20時点)
damePGははなはだ英語は苦手だけど翻訳しながらがんばります。


新規プロジェクトを作成します。
作成するには以下の図の一番左のボタンを押します。
20090422093027


すると以下のような画面が出るので、ここでプロジェクト名とパッケージ名を入力します。
20090422161225


すると新しいプロジェクトができました。
このローカルの環境でGoogle App Engineにアップロードしたときと
同じように動作することができます。


ではGetting Started: Javaに書いてるように
guestbookパッケージで作成してみたいと思います。

package guestbook;

import java.io.IOException;
import javax.servlet.http.*;

public class GuestbookServlet extends HttpServlet {
	public void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws IOException {
		resp.setContentType("text/plain");
		resp.getWriter().println("Hello, world");
	}
}

で次にWeb.xmlの定義をします。
Webアプリを作成する際DynamicWebProjectを選択すると
(damePG's Eclipseは常に英語漬けなんで
日本語でなんていうのかはわかりません)
WebContentがありますが、同じような感じで
今回はWar直下に静的ファイルを置くというかんじですね。

WEB-INF直下にWeb.xmlがありますので
そこにリクエストを記述します。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
    <servlet>
        <servlet-name>guestbook</servlet-name>
        <servlet-class>guestbook.GuestbookServlet</servlet-class>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>guestbook</servlet-name>
        <url-pattern>/guestbook</url-pattern>
    </servlet-mapping>
    
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>
</web-app>

はい!!
では以下のように実行します。
(↑僕はこのやり方が好きなんで嫌な方は違う方法を使ってください)
20090422161226


さっきXMLで指定したリクエストを送信します
http://localhost:8080/guestbook
すると
20090422161224


はいでました。
なんらいつものWebアプリケーションの作成と変わらないですね。
というより、Googleのブラウザめっちゃかわいいですね。
ほれてまうやろ〜〜!!