Google App Engine をローカル環境で実行し、サーブレットにリクエストを発行するとエラーになります。


解決方法を教えて頂けないでしょうか。エラーの内容は以下のとおりです。

HTTP ERROR 500

Problem accessing /showdata. Reason:

javax.servlet.FilterChain is a restricted class. Please see the Google App Engine developer's guide for more details.
Caused by:

java.lang.NoClassDefFoundError: javax.servlet.FilterChain is a restricted class. Please see the Google App Engine developer's guide for more details.
at com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java:51)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)

(文字数制限により途中省略)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2010/09/27 22:04:51
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:akagi_paon No.2

回答回数143ベストアンサー獲得回数13

ポイント100pt

どうやら Google App Engine のバグみたいですね。

servlet-api.jar を Tomcat のものと置き換えると動いたなどの報告があるみたいです。

http://code.google.com/p/googleappengine/issues/detail?id=2324

SDK の問題かもしれませんので最新バージョンにしておくことをお勧めします。

id:tyn

バグだったのですね。ありがとうございました。

Pleiadesを3.4から3.5に変えたところ問題なく動きました。

2010/09/27 22:04:11

その他の回答1件)

id:tasklight No.1

回答回数323ベストアンサー獲得回数40

ポイント50pt

「Google App Engine をローカル環境で実行」の意味がわからないのですが、自サーバにJavaサーブレット環境を構築して試行したということでしょうか。

だとすると、Google App Engine に必要なクラスが不足しており、質問のようなエラーが出ているのだと思います。


Google App Engine上で実行したときにもエラーは表示されますか?

id:tyn

説明不足失礼しました。

Google App Engine をローカル環境で実行 ⇒ Google App Engine をEclipseからローカルの開発環境で実行

Google App Engine のEclipseプラグインをインストールし、Eclipseからプロジェクトを作成しました。

サーブレット環境は自動的に構築されているようです。

作成直後のプロジェクトを実行する場合、クラスを追加する必要はないはずなのです。

ちなみに、Google App Engine上で実行したときには上記エラーは起きません。

2010/09/27 17:55:54
id:akagi_paon No.2

回答回数143ベストアンサー獲得回数13ここでベストアンサー

ポイント100pt

どうやら Google App Engine のバグみたいですね。

servlet-api.jar を Tomcat のものと置き換えると動いたなどの報告があるみたいです。

http://code.google.com/p/googleappengine/issues/detail?id=2324

SDK の問題かもしれませんので最新バージョンにしておくことをお勧めします。

id:tyn

バグだったのですね。ありがとうございました。

Pleiadesを3.4から3.5に変えたところ問題なく動きました。

2010/09/27 22:04:11

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません