2009-11-29

GAE/J、Datastore Viewer が表示できない

実環境では管理コンソールの Data Viewer からデータストアの内容を確認、編集できます。SDK 1.2.2 より、ローカル環境にも Data Viewer が実装されました。次の URL で参照できます。
http://localhost:8080/_ah/admin
とのことなので、Firefox でローカル Datastore Viewer にアクセスしてみたところ、「正常に接続できませんでした」の表示。どうやら Firefox の拡張機能 NoScript の「ABE」という機能が邪魔してたみたい。オプションからチェックをはずして、ひとまず解決。

プログラミング、つづり間違い

programing じゃなくて programming。
わかっていたつもりが、失敗。
ブログの URL が変わってしまった。とほほ。
3 件投稿したところで気づけて、まだ良かったというべきか。

2009-11-09

GAE/J、ローカル環境データストアの実体はどこに?

Google App Engine for Java、ローカルでのデータストアの実体について、テキストによると
プロジェクトフォルダ/war/WEB-INF/appengine-generated/local_db.bin
にあるよとのこと。これをローカルのデータ削除のために Eclipse のパッケージ・エクスプローラーで探してみたけれど見つからず、少し焦る。結局、単純に Windows のエクスプローラーで表示して削除すればよかったみたい。

追記:

shin1ogawa さんに教えてもらった
@kurikuribo eclipseのパッケージエクスプローラやナビゲータ上で、warフォルダなどの親プロジェクトを選択して右クリック「更新」で、Eclipse上にも表示されるはずです。
右クリック「リフレッシュ」で Eclipse 上にも表示されました。やった。ありがとうございます。

GAE/J、URL フェッチで文字化け「????」

Google App Engine for Java 最初のつまずき。URL フェッチで日本語が「?????」と盛大に文字化け。 Google の Low Level API だと、文字エンコードの設定も自動でしてくれるよ、とのことだったのでその まま信用していたけれど、やっぱり設定はいるようで。
public static String getSiteText(String url, String charset) throws IOException {
    return new String(URLFetchServiceFactory.getURLFetchService().fetch(new URL(url)).getContent(), charset);
}
としておくと、とりあえずいい感じ。もちろん、
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    resp.setContentType("text/html; charset=UTF-8");
    ...
}
としとかないと、それはそれで文字化けするので注意。あ、あとパラメータ処理のために
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    req.setCharacterEncoding("UTF-8");
    ...
}
みたいなのもいるらしいけれど、うちでは今のところ関係なし。文字コードの自動取得コードも書いてみたいけれど…、それはまた別の機会に。

参考:

2009-11-08

Google App Engine for Java 始めました

Google App Engine for Java (株)グルージェント著 技術評論社
この本を読んで、プログラム熱がメラメラと燃え上がってきたので、とりあえずブログ開設。 現在 Perl で書いている Japanese Blogger Update Info をまず GAE/J に置き換えて、その後簡単な掲示板とか、ブログのカテゴリ分けとかの機能追加ができたらなと思っているところ。 ひとまず、作ってみて何か形にしてみよっと。

Zenback - Everyone's Related Posts