Category Archives: Google App Engine

Wicket On AppEngine

WicketをAppEngineで動かしてみた。 http://wicketonengine.appspot.com/ 必要なjarファイル。 wicket-1.4.6.jar slf4j-api-1.6.1.jar slf4j-log4j12-1.6.1.jar log4j-1.2.9.jar 1. プロジェクト作成 Eclipseから「Web Application Project」を作成する。 2. jarの配置、Build Path設定 上の4のjarファイルを /war/WEB-INF/lib/ に入れる。 Java Build Pathの設定で、wicket-1.4.6.jarとslf4j-api-1.6.1.jarを追加 3. web.xml <display-name>wicket on engine</display-name> <filter> <filter-name>WicketFilter</filter-name> <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class> <init-param> <param-name>applicationClassName</param-name> <param-value>com.appspot.wicketonengine.WicketApplication</param-value> </init-param> <init-param> <param-name>wicket.configuration</param-name> <param-value>deployment</param-value> </init-param> </filter> <filter-mapping> <filter-name>WicketFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 4. appengine-web.xml <sessions-enabled>true</sessions-enabled> 5. パッケージ、クラス作成 パッケージ:com.appspot.wicketonengine クラス:WicketApplication.java public class WicketApplication extends WebApplication{ public [...]

AppEngine デプロイエラー

GAE/J デプロイエラー: Unable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=term&version=1&409 ConflictAnother transaction by user dongrikim is already in progress for this app and major version. That user can undo the transaction with appcfg.py’s “rollback” command. See the deployment console for more detailsUnable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=term&version=1&409 ConflictAnother transaction by user [...]

web1.0は消えるべきか?

2005年に作ったページがこんな結末に… 苦労して作ったのに! 一瞬捨てようと思ったが、やっぱり… しょうがないので、引越し! http://footmarkplus.appspot.com/ appengineではperl cgi使えないんで、BBSは http://www.xrea.com/ で  

PHP on Google App Engine

1. Quercusライブラリダウンロード http://quercus.caucho.com/ から Quercus 3.1.6をダウンロードする(Quercus 4.0.1は文字化けが発生するので、今回は3.1.6を使うようにする) jar xf quercus-3.1.6.war (quercus.jar, resin-util.jar, script-10.jar) 2. Jettyライブラリダウンロード http://dist.codehaus.org/jetty/jetty-6.1.17/ から jetty-6.1.17.zip をダウンロード (jetty-6.1.17.jar, jetty-util-6.1.17.jar) 3. ライブラリをlibフォルダに入れる 1と2で取得したjarファイルを war/WEB-INF/lib に入れる 4. 設定ファイル修正 4-1 appengine-web.xml <static-files> <exclude path=”/**.php” /> </static-files> <resource-files> <include path=”/**.php” /> </resource-files>   4-2 web.xml <servlet> <servlet-name>Quercus Servlet</servlet-name> <servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class> <init-param> <param-name>script-encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>ini-file</param-name> <param-value>WEB-INF/php.ini</param-value> </init-param> [...]

Google App Engine for Java

最近iPhoneアプリの開発に夢中になって、なかなか時間が取れなかったのですが、今日やっと時間がすこしあったので、前からやってみたかった app engine for java を試すことにしました。Pythonの時はSDKをダウンロードして、秀丸なり好きなエディターでコードを書いてましたが、今回はEclipseのプラグインという素晴らしい選択肢がありました。もちろんJava版のSDKも用意してますけど。 推奨されてるJavaバージョンは6ですが、5でも大丈夫みたいです。Javaはすでにイスントールしてあるので、Eclipseのプラグインを入れることにしました。使ってたEclipse3.3.1にプラグインを入れようとしましたが、「org.eclipse.wst.xml.core」が必須ですと怒られて、本体のUpdateを行いましたが、今度はEclipseの起動すらできませんでした。ショック!しょうがないんでEclipse3.4でチャレンジすることにしました。 まずは、こちらからEclipse3.4.2をダウンロード(http://www.eclipse.org/downloads/packages/) 英語が得意ではないんで日本語化(http://mergedoc.sourceforge.jp/index.html#/pleiades.html) 次はGoogle Plugin for Eclipseを入れる。(http://dl.google.com/eclipse/plugin/3.4) 完了すると、メニューに三つのアイコンが出てきます。(可愛い~)左からプロジェクト作成、コンパイル、デプロイです。新規でプロジェクトを作成するとテンプレートでAjaxを使ったサンプルコードが自動生成されます。試しにappspotにデプロイしたのがこちら(http://term.appspot.com/)。これだけだと寂しいんでGuestBookも入れようとしましたが、失敗しました。ローカルでは問題なく動きますが、appspotにデプロイするとServer Errorが発生します。 「java.lang.ClassCastException: com.google.appengine.api.users.UserServiceFailureException cannot be cast to javax.servlet.ServletException」 どうもこれが原因らしい。(http://groups.google.com/group/google-appengine-java/browse_thread/thread/3263e14c37391830) やってみて、Pythonの時と比べると少しは楽かと思いました、少なくとも言語がJavaなんで言語そのものの勉強は要らないですね。さ~何を作ってみようかな?時間があるときですけど。時間は自分が作るものだと言われてますが、なかなか難しいですね・・・

AppEngineでFlickr APIを使ってみよう

前回はPHPとFlickrAPIを使って自分の写真を表示するようなことをやってみましたが、今回は最近人気上昇中のGoogleAppEngine(GAE)を使ってFlickrタグ検索をやってみたいと思います。GAEの説明はここでは省略します。が参考になるページを紹介します。 Google Code – Google App Engine さっそくHello Worldから作ってみた Google App Engine を使ってみよう Flickr APIページを見るとPythonのライブラリもありましたが、決して使う気になりませんでした。一つ一つ調べながら遊びたいからです。以下がタグ検索して画面に表示するコードになります。キーワードになるものとしては、google.appengine.api.urlfetch と xml.dom.minidom です。 main.py #!/usr/bin/env python # import cgi,os import wsgiref.handlers from google.appengine.ext import webapp from google.appengine.ext.webapp import template from google.appengine.api import urlfetch from xml.dom import minidom class MainPage(webapp.RequestHandler): def get(self): api_url = “http://api.flickr.com/services/rest/?” api_key = “5f5ffa7c9fcf9f65bc0aae95ad71****” api_method = “flickr.photos.search” [...]

Google App Engine を使ってみよう

一か月ほど前Googleから発表された新しいサービス「App Engine」ですが、今日やっと試すことになりました。他社(Amazon)のサービスと比べ、Google Bigtableにアクセスできて、GoogleFileSystemデータストレージサービスから構成されてるのが魅力だと思います。 1.まずは、Pythonの環境を作成。 http://www.python.org/download/ から Pythos2.5のインストール。 インストール完了後パスの設定を行います。 バージョン確認 C:\>python -V Python 2.5.2 C:\> 2.SDKインストール。 http://code.google.com/appengine/downloads.html から自分のプラットフォームに合わせてSDKをダウンロードして、インストール。今回はWindowsで試したので、GoogleAppEngine_1.0.2.msi をダウンロードしてインストールしました。 3.デモを実行してみる。 AppEngineのインストールが完了すると C:\Program Files\Google\google_appengine が出来上がるので、コマンドプロンプトからそこに移動します。 C:\>cd C:\Program Files\Google\google_appengine C:\Program Files\Google\google_appengine>dev_appserver.py demos\guestbook http://localhost:8080 にアクセスしてみる。ゲストブックが表示されてることを確認 4.Hello Worldを作成してみる。 google_appengineの下に新たに helloworld フォルダを作成、その下に app.yaml と main.py ファイル作成。 app.yaml application: helloworld version: 1 runtime: python api_version: 1 handlers: – url: .* script: main.py main.py #!/usr/bin/env [...]

Follow

Get every new post delivered to your Inbox.