Google App Engineで動くRemember The Milk APIライブラリは?
RememberTheMilk.com Java API
http://sourceforge.net/projects/rtmjava
おそらく一番使われているであろうライブラリ
残念ながら、Google App Engine上では動かない(涙)
Error for /login java.lang.NoClassDefFoundError: Could not initialize class com.google.apphosting.runtime.security.shared.stub.java.util.prefs.Preferences at com.mdt.rtm.Prefs.<init>(Unknown Source) at com.mdt.rtm.ServiceImpl.<init>(Unknown Source) at jp.kslash.rtm.mobile.LoginServlet.doGet(LoginServlet.java:24) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35) (省略)
The JRE Class White Listを見ても、java.util.prefs.Preferencesはないので、Google App Engineはサポートしていないということか。
問題になっている箇所はここ。要は認証済みのtokenを保存しておくのにPreferencesを使っているのね。
http://rtmjava.svn.sourceforge.net/viewvc/rtmjava/trunk/src/com/mdt/rtm/Prefs.java?view=markup
rtmlib
http://code.google.com/p/rtmlib/
現状はXPathFactory.newInstance()が動かないのでGoogle App Engine上では動かないものの、将来的には動くようになりそう。でも機能的に足りなすぎるからボツかな・・・。