- 2009-04-11 11:27
- GAE
Google App EngineがJava対応したということで、早速試してみました。
#1万人限定のEarly Lookなので、正式公開はもう少しかかるようです
Java開発といえばEclipseだろうということで、Eclipseで試してみました。
今回の内容は
- Eclipse Pluginをインストール
- Hello, worldを試す
という、超入門です。
Eclipse 3.4 (Ganymede)
[Help]→[Software Update]→[Available Software]→[Add Site…]
これでプラグイン配布サイトを追加します。

Eclipse v3.4の場合は「http://dl.google.com/eclipse/plugin/3.4」ですが、
Eclipse v3.3の場合は「http://dl.google.com/eclipse/plugin/3.3」です。
配布サイトを追加したら取得可能なソフトウェアをチェックしてインストールします。

左上にアイコンが表示されていればインストール完了です。

さっそくチュートリアルに沿ってHello, worldを試します。
アプリケーションのプロジェクトを作成します。
先ほど確認したアイコンをクリックするだけです^^

プロジェクト名:Guestbook
パッケージ名 :guestbook

今回はGoogle Web Toolkitは使わないので「Use Google Web Tool…」チェックボックスを外しておきます。
これでプロジェクトを作ると以下の様なファイル構成が生成されています。

これをひな形として、ファイルの追記と追加をしてアプリケーションを作ります。
基本構成はWARと同じなのでサーバサイドJavaに慣れた人なら敷居がかなり低いのではないでしょうか?
いわゆるサーブレットと言われるファイルは/Guestbook/src/guestbook/GuestbookServlet.javaです。
このファイルを開いてみます。

ハローーーーーーーーーーーー!!
WebアプリなのでURLでアクセスすることになります。
つまり、どのURLがどのサーブレットなのかを対応付ける必要があります。
そのファイルが/Guestbook/war/WEB_INF/web.xmlです。
早速そのファイルを開いてみます。

まず、このファイルはサーブレットだよってことを宣言してやります。
<servlet> <servlet-name>guestbook</servlet-name> <servlet-class>guestbook.GuestbookServlet</servlet-class> </servlet>
guestbook.GuestbookServlet(.class)をguestbookというサーブレット名として宣言します。
つぎに、サーブレットとURLを関連づけます。
<servlet-mapping> <servlet-name>guestbook</servlet-name> <url-pattern>/guestbook</url-pattern> </servlet-mapping>
これで、http://[[ BASE_URL ]]/guestbookにアクセスするとguestbook.GuestbookServletが実行されます。
さっそくテストします。
プロジェクトを実行するだけです。

するとコンソールにサーバが起動したというメッセージが出ます。

これが出たらブラウザで確認します。

ハロー、ハローーー!!
できた!簡単、簡単!
サーバの停止はさっきのコンソールに左上のアイコンからできます。

もちろんデバッグ実行もできます。
Javaファイルにブレークポイントを仕込んで、

デバッグ実行します。

ブラウザで「http://localhost:8080/guestbook」にアクセスします。
するとブレークポイントを仕込んだ場所でちゃんと止まってくれます。

変数もちゃんと取れてます。

こりゃ便利!!
Webアプリの開発がスゲー簡単になった!!
- Newer: 「simeji」ただいま栽培中
- Older: 空中に文字を書くアプリ「Air Writer」 続
Comments:0
Trackbacks:3
- Trackback URL for this entry
- http://www.adamrocker.com/blog/251/install-and-tutorial-google-app-engine-for-java.html/trackback/
- Listed below are links to weblogs that reference
- Google App Engine for JavaにEclipseで超入門 from throw Life
- trackback from site:goodseason 「イエス、モア、ライト、ライト。」 09-04-13 (月) 23:03
-
[it] Google App EngineがJavaに対応…
らしいよっ! 「おぉ!!」っと思ったのはオレだけですかそーですか。 グッドシーズンです。 こんばんわ。 たまにはIT系の話題もね。 と思ったところに ちょうどいい話題 (more…)
- pingback from 今週の管理人Bookmark (5/18-5/25) - ElectronicBrain is eating BreakFast 09-05-25 (月) 0:07
-
[…] throw Life - Google App Engine for JavaにEclipseで超入門 […]
- pingback from ソーシャルアプリの置き場としてGoogle App Engine for JavaのEclipse Pluginを利用してみる | alt 10-01-22 (金) 2:28
-
[…] 今後、mixiアプリなどのソーシャルアプリを作っていく際に 置き場所としての候補が今借りてるhetemlとさくらの共用サーバーしかない。。 ストレージよりも大量アクセスに耐えうる負荷分散や帯域を気にしたいところ。 調べていくとGoogle App Engineがよいという情報を入手したので 今のうちに使い込んでおこうと思います。 理由は単純。 ・Eclipseプラグインとして簡単に作成、テスト、アップロードができる ・Googleのインフラで安心 ・目的がソーシャルアプリの置き場として利用 ・負荷分散も自動で行われる ・無料アカウントで始められるのでAmazon EC2に比べてコストが抑えられる ・共同開発やバージョン管理ができる ・管理画面が超充実している アプリケーションは、JavaかPythonのランタイム環境で実行できるみたいなのですがどちらも馴染みがない・・・ (自由度が少ないとあったけど、cron使えるし、Quercusを入れればPHPも動かせる) とりあえず、Javaで開発環境を作ってみます。 以下、設定メモ。 1.Javaを入れてない場合は ここを参考にして「JDK 6 Update 18」をインストールする。 http://www.db.is.kyushu-u.ac.jp/rinkou/javaintro/javac.html 2.Eclipseを入れてない場合は ここを参考にして「Eclipse3.4.2」をインストールする。 http://www.db.is.kyushu-u.ac.jp/rinkou/javaintro/eclipse.html ※もしEclipseの起動時にエラーが出た場合は eclipse.iniの先頭2行 -showsplash org.eclipse.platform を消すとうまくいく。 3.Eclipseを立ち上げると、ワークスペースの設定画面になるのでディレクトリを「C:workspace」に設定する。 「Window」→「Preferences(設定)」→「Java」→「Installed JREs」を確認し、 「C:Program FilesJavajre6」だった場合は さきほどインストールした「C:Program FilesJavajdk1.6.0_14」に設定しなおす。 4.日本語化は Pleiadesから安定版の1.3.1をダウンロードし、解凍したものをEclipseディレクトリにそれぞれ上書きする。 eclipse.iniの最後の行に -javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar を追加する。 Eclipseディレクトリの「eclipse.exe -clean.cmd」を起動する。 日本語化終了。 5.ここを参考にしてEclipseにGoogle App Engine for Javaを入れる。 「ヘルプ」→「ソフトウェア更新」→「使用可能なソフトウェア」→「サイトの追加」→「http://dl.google.com/eclipse/plugin/3.4」で次の3つをインストール。 - Google App Engine Plugin - Google App Engine Sdk - Google Web Tool Kit 6.Eclipseを再起動して「ファイル」→「Web Application Project」からプロジェクト作成。 ※今回はGoogle Web Toolkitは使わない。 7.構成ファイルは以下のようになっている。 Test/src/test/TestServlet.java ・・・ サーブレット Test/war/WEB-INF/web.xml ・・・ サーブレットのマッピングを行う 8.WEBアプリケーションのローカルテスト。 プロジェクト・エクスプローラーもしくはナビゲーターから 「Test」を右クリック→「実行」→「Webアプリケーション」を実行するとコンソールに The server is running at http://localhost:8080/ が出力される。 ※xamppなどのサーバーソフトを入れている場合はApacheを停止にしておく。 ブラウザでhttp://localhost:8080/testにアクセスすると「Hello, world」が出力される。 9.アプリケーションをGoogle App Engineのインフラで動かすため、まずはサイトにアプリを登録する。 以下にアクセス。 http://appengine.google.com/ 「Create an Application」ボタンをクリックして Application IdentifierにアプリケーションIDを登録。 「Check Availability」でユニークIDが出るまでがんばる。 Application Titleは適当に入力してSaveボタンをクリック。 以上で登録は完了。 10.GAEクラウド環境へアプリをアップロードする。 ナビゲーターから「Test」を右クリックし、「Google」→「Deploy to App Engine」を選択。 Email、PasswordにはGoogleアカウント情報を入れる。 このままデプロイすると appengine-web.xmlにアプリケーションIDとバージョンが登録されていないため警告が表示されるが、 左下の「App engine project settings」をクリックして新規にIDを取得する。 Application IDはさきほどサイトに登録したアプリケーションIDを、Versionには適当な値を入れてOKボタン。 (サーバに保持できるVersion数は10個が上限) 「Deploy」ボタンをクリックして再度デプロイする。 ※Test/war/WEB-INF/appengine-web.xmlを開くと先ほどのアプリケーションIDが情報が登録されているはず。 11.アップロードが完了したら以下のURLへアクセスしてみる。 http://アプリケーションID.appspot.com/ […]
