JSP/Servlet | GAEアプリケーション作成 | Webアプリケーションをデプロイする

それでは、作成したプロジェクトをGAEサーバーへデプロイしてみよう。まだ何も作っていないが、サンプルファイルが含まれているため、ひとまずこのままデプロイしても動作する。

まず、プロジェクトをGAEに作成したアプリケーションへデプロイするために必要な設定を行う。「WEB-INF」にある「appengine-web.xml」をダブルクリックして開く。XMLエディター、つまりXMLデータを編集するための専用エディターでファイルが開かれる。このXMLエディターでは、XMLタグ一覧の内容を編集できる。

タグ一覧では、左側に項目名が表示され、右側にその値が表示される。この右側の値の部分をダブルクリックすると値を編集できる。修正後は[File]メニューの[Save]で保存する。またはショートカットキーCtrl+Sでも保存できる。

このファイルを開くと、中に次の項目があるはずだ。これを設定する。

  • application: これはデプロイ先のGAEアプリケーション名を指定する。まず、GAEサイトで作成しておいた「プロジェクトID」をここに入力する。

もしXMLエディターがうまく動作しない場合は、エディター領域の下にある「Design」「Source」というタブから「Source」をクリックして選択する。XMLソースコードを直接テキストエディターで編集できる。ここで冒頭に書かれている次の部分を修正する。

<? xml version = "1.0"encoding = "utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
    <application> ... ここにプロジェクトIDを書く ... </application>
    <version>1</version>
    ...... 以下省略 ......

ここで<application> ~ </application>タグの間に「プロジェクトID」を記述すればよい。

デプロイの実行

XMLファイルを修正したら、プロジェクトをデプロイしてみよう。次の手順で実行すればよい。

  1. Package Explorerでプロジェクトフォルダー、「MyGaeApp」フォルダーをクリックして選択する。

  2. メニュー下のツールバー左から4番目のアイコン、青い丸の中にGoogleの「g」が描かれているものをクリックすると、メニューがポップアップ表示される。その中から[Deploy to App Engine …]項目を選択する。

  3. 画面にGoogleアカウントのログイン画面が表示される。まだEclipseでログインしていない場合である。ここでGAEアカウントとして登録されているメールアドレスとパスワードを入力し、「ログイン」をクリックしてログインする。

  4. 「Google Plugin for Eclipseが次のような権限を要求している」という表示になる。「許可」ボタンを押す。

  • この1から4の部分は、EclipseでGoogleにログインしていれば以後は表示されない。
  1. 「Delpoy」というダイアログが表示される。ここでデプロイするプロジェクトを指定する。ここでは「MyGaeApp」となっているので、そのまま「Deploy」ボタンを押す。もしプロジェクトが設定されていなければ、右側の「Browse …」ボタンを押してプロジェクトを選択する。

  2. デプロイが実行されると、画面にダイアログが表示され、進行状況がプログレスバーに表示される。ダイアログが消え、無事にデプロイが終了するとWebページが開かれる。

デプロイできたら、GAEサイト(https://console.cloud.google.com/appengine/)にアクセスする。上部で該当プロジェクトを選択し、[ダッシュボード]を選択すると、バージョンは「1」と表示され、右側にURL、たとえばプロジェクトID.appspot.comが表示されている。このURLをクリックするとWebアプリケーションにアクセスでき、「Hello App Engine!」と表示されたページが現れればデプロイ成功である。

デプロイされたアドレスを見ると、次のようになっていることがわかる。

http://プロジェクトID.appspot.com

GAEのアプリケーションはすべてこのようにアドレスが割り当てられる。もちろん通常のWebサイトと同じように公開され、誰でもアクセスできる。まだ単なるサンプルなので公開しても意味はないが、これから学習して自分なりのWebアプリケーションになれば、公開することで多くの人に使ってもらえるだろう。