2009年09月27日 Google App Engine の管理画面にログを出力する GAEでは基本的にローカルファイルへの書き込みはサポートされていないようだ。ではログへの記録はどうするのかというと、管理画面の Main > logs にログの表示画面がある。 では、ここへ情報を出力するにはどうすればよいのか?というと、appengine-jrubyを使ってGAEのログの仕組みを利用することができる。 GAEでWebアプリを動かすための設定に加えてメール用に追加が必要な宣言は require 'appengine-apis/logger' だけ。 あとはアプリの最初の方で初期化して使う。Sinatra用にメソッドを書いてみた。logger = AppEngine::Logger.new get '/who' logger.info('誰か来ました。') end 管理画面に表示された内容
GAE on jRuby with Sinatra でやってみるよ 元ネタは Users Java API の概要 - Google App Engine — Google Developers で、こいつを jRuby 上で sinatra を使った場合どうやるのか? という話。 ポイントは 2点 Java のスタティッククラスを使う場合は import 文を使う Java の HttpServletRequest オブジェクトを取得する場合は、 sinatra の request オブジェクトの Hash に格納されている この二つを踏まえればあとはそのまま移植すれば良い。 Java のスタティッククラスを使うためには import する。そして、import の前に java を include する。あまり詳しく読んでいないので、おまじないとして考えておくw include Jav
2009年09月27日 Google App Engine からメールを送る appengine-jrubyを利用してのメールの送信は拍子抜けするくらい簡単だった。 GAEでWebアプリを動かすための設定に加えてメール用に追加が必要な宣言は require 'appengine-apis/mail' だけ。あとはメソッド一発で送信できてしまう。 AppEngine::Mail.send( 'FROMアドレス文字列', 'TOアドレスの文字列かTOアドレスの配列', 'タイトル文字列', '本文文字列(HTMLメールの場合はnil)', {送信オプション} ) appengine-apisのリファレンスによると送信オプションで使用できるのは下記の通り。 :atttachments メッセージと共に送信する添付ファイル。{“ファイル名” => “データ”} というハッシュか、 [[“ファイル名
以下の組み合わせで動作を確認しています jruby-1.4.0 rails 2.3.2 appengine-java-sdk-1.3.0.zip appengine-apis-0.0.11.jar (0.0.12 でもメール受信部分の機能は入っていないっぽい) GAE/J でのメールの受信の流れは以下のようになっています。 (string)@(appid).appspotmail.com 宛へメールを送る 次のURLが呼び出される http://(appid).appspot.com/_ah/mail/(string)@(appid).appspotmail.com ↑ の URL に関連付けられた method が呼び出される TomCat(?) の HttpServletRequest req の req.getInputStream() から受信したメールを読み込む ※ (strin
こんにちは。typesterの陰謀によりVimmerはモテないというデマが流れておりますが、残念ながらそれがデマだということを身をもって証明できないでいるVimmerの外村です。 先日、お悩み相談の記事がホットエントリーに入ったら彼女ができるという噂が立ち、何を間違えたかホットエントリーに入ってしまったのでどうしようかと思ったのですが、プログラマたるもの問題があればプログラムで解決すべきだろうと考えました。 というわけで彼女を作ってみました。どういうものかというと、 僕だけに定期的につぶやく 僕のリプライだけに反応してリプライを返してくれる まさに僕だけのボット彼女です。今回はこれをGoogleAppEngine+JRubyで実装したので、環境をつくるところか実際に動かすところまで説明します。 1. 環境をつくる まずはGoogleAppEngineのアカウントがないと始まらないので以下か
appengine-jrubyを使うと、GAE/JでJRubyが簡単に使えるらしいので、Twitter botを書き直してみたが、はまりどころ満載だったので、メモしておく。 appengine-jrubyで簡単GAE/JRuby開発 - しばそんノートがまとまっているので、その通りにやると、 hpricotが動かない。 appengine-jrubyはgemをWEB-INF/lib/gems.jarにまとめてしまう。hpricotは自分でjruby版パッケージをビルドしないといけないのだが、 git clone git://github.com/whymirror/hpricot.git cd hpricot jruby -S rake package_jruby appcfg.rb gem install pkg/hpricot-0.8.257-jruby.gemしただけでは、gemに含
少し前のエントリで、GAE/JRuby上でRackアプリを動かす手順を書きました。 Google App Engine上でRubyアプリを動かす手順 - しばそんノート このときの手順は、Java SDKをインストールして、GAE SDKをダウンロードして、jruby-complete.jarをコンパイルして…と、やや煩雑なものでした。この当時はおそらくこれが一般的な手法だったのではないかと思います。 しかし、今や時代は変わりました。今GAE/JRubyでRackアプリを作るのに必要な作業は、たったひとつのgemのインストールだけです。 GettingStarted - appengine-jruby - Getting Started with JRuby on Google App Engine - Project Hosting on Google Code 有志によってGAE/JR
はじめに Twitterは140文字以下の短いメッセージをつぶやきあうシンプルなサービスです。新しいコミニュケーションの形として利用している人も増えてきました。 Google App Engine(以下 GAE)についてはご存知の方が多いと思います、Googleが提供するクラウド環境で、ある規模までのアプリなら無料で使えます。また、GAEは単なるサーバ環境の提供ではなくスケーラビリティと信頼性が得られるアプリケーションの実行環境です。しかし使える機能やデータ管理の方式はGoogleの提供するSDKに従う必要があります。 GAEは2009年4月からは、Pythonに加えJavaがサポートされるようになりました。本連載の第1回目でふれたように、Rubyの処理系にはまつもと氏の作った処理系(MRIと呼ばれます)以外にも、Javaで作られた JRuby という処理系があります。JRuby はJav
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く