学習メモ:作ればわかる!Google App Engine for Javaプログラミング(Part.2)

Google App Engine(以下、GAE)でアプリケーションを作成しようと思ったので、再び開く。

GAEが提供するサービス一覧
(1)サーブレット&JSP
 ・クライアントからリクエストを受付、返す(ビュー)為の機能
(2)データストア
 ・GAEで用意されているデータベースに対するデータの保存や読み込みを行う機能
(3)ブロブストア
 ・画像や音声等の大きいデータの保存や読み込みを行う機能
(4)チャネル
 ・クライアント・サーバ間でのリアルタイム通信を実現する機能
(5)画像処理
 ・その名の通り(Imagesライブラリ)
(6)メール
 ・メールの送受信を行う機能
(7)メモリーキャッシュ
 ・頻繁に使用されるデータを高速に利用出来るようにキャッシュする機能
(8)マルチテナント
 ・1つのアプリケーション上で複数の環境を使用する機能
(9)OAuth認証
 ・Twitter等で使用されるOAuth認証を使う為の機能
(10)タスクキュー
 ・時間の掛かる処理をバックグラウンドで実行する為の機能
(11)スケジュールタスク
 ・決まった間隔でサーブレットを起動する機能
(12)URLフェッチ
 ・GAEから外部のWebサービスを呼び出すための機能
(13)ユーザーアカウント
 ・Googleアカウント、又はOpenIDを使ったユーザ管理を行う為の機能
(14)XMPP
 ・インスタンスメッセージを送受信するXMPPを利用する為の機能

//*****************
さて、久しぶりにアプリケーションの作成
GAEでは、プロジェクト名は既に公開されているプロジェクト名は登録出来ない為、まずは、「Create an Application」ページからCheck Availabilityボタンを押下して登録可能プロジェクト名かを確認する。

パッケージ名は、Java標準に従い、公開するアプリケーションのドメインを逆順にしたものになる。
以上から、GAEの場合は、「com.appspot.[プロジェクト名]」になる。

//*****************
ヘルパークラスって何?
 ・サーブレットJSPなどからいつでも呼び出せるクラスを指す。

//*****************
JSTL(一例)
 ・JSTLにおけるタグはクロスサイトスクリプティングの危険性のある特殊文字文字参照に変換してくれる。

//*****************
文字化け対策
 ・文字コードが不一致になる可能性があるパターンは4種類
 (1)画面からサーバに送られるリクエストの文字コード
 (2)JSPソースコードそのものの文字コード
 (3)サーバから画面に返されるレスポンスの文字コード
 (4)HTML文章の文字コード

 ・対策方法としては
 (1)の場合
  →サーブレットフィルタを作成する
   サーブレットフィルタとは、サーブレットが呼び出される前にブラウザから送信された情報を加工する為のJavaの機能。