2010-01-05 posted at 11:34am

atomos を GAE で動かそうと試みる

まず

$ sudo gem install google-appengine

config.ru を書きかえたり、Gemfile を書いてから

$ dev_appserver.rb .

するとこんなエラーが出た。

cannot link Java class com.google.appengine.jruby.AppVersionUploadDelegate, probable missing dependency: Bad version number in .class file

ここのコメントに従い Java Preferences.app で Java SE 6 の優先順位を上げてやるとサーバーは立ち上がるようになった。

http://localhost:8080/ にアクセスすると次は

../dm-aggregates-0.10.2/lib/dm-aggregates/repository.rb:6:in `aggregate': undefined method `aggregate' for #<DataMapper::Adapters::AppEngineAdapter:0x2207d8bb> (NoMethodError)

dm-aggregatescount メソッドを使う所をコメントアウトするととりあえず見れるようになった。

パーマリンクにアクセスしようとすると別のエラーが

Application Error com/google/appengine/api/datastore/Query.java:478:in `<init>': java.lang.IllegalArgumentException: Filters of type org.jruby.RubyObject are not supported (NativeException)

調べてみると同じようなエラーに遭遇している人もいて condition に Date オブジェクトを渡しているのが問題らしい。

appengine_adapter.rb とか見てみたものの原因がすぐにはつきとめられなかったので今日はここまで。

filed in