2012-04-02 21 views
2

GAE開発サーバーを使用してウェブサイトのすべてのページを正常に表示できるバグが発生していますが、すべてのページに私は配備中に何のエラーも見ません。 JSPの再コンパイル・エラーはありません。ここでGoogle App EngineでコンパイルおよびデプロイされたJSPをデバッグします

は、サンプルの例外です:

Uncaught exception from servlet 
java.lang.NullPointerException 
    at org.apache.jsp.WEB_002dINF.views.index_jsp._jspInit(index_jsp.java:25) 
    at org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:91) 
    ... 

私は戻って、それは私の変更の前にするために使用するものにindex.jspを更新した場合、私が行った変更は、ほとんどが、興味深いことに変更をスタイリングとされてきたが、私はまだNPEを入手してください。

私はSitemeshで標準のJSTLを使用しています。私はそれを排除するためにsitemeshフィルタを無効にして、まだエラーを取得します。私はまだ1.6.3 SDKを使用しています(maven-gae-pluginはまだ更新されていないので)。

GAEで使用されているコンパイル済みJSPを見る方法はありますか?

+0

map reduceサーブレット(これはもう使用していませんでした)を削除し、1.6.4に更新しました。すべてが正常に動作しているようです...どちらが原因かわかりません。 – Tristan

答えて

0
  1. 後藤は一時的folder.Iから特定の行番号(25)は、GAEでの一時フォルダがthough.The特定の行番号がnullまたはオブジェクトのメソッドを呼び出すかもしれないどこにあるかわかりません初期化されていません.JSPページ初期化時に発生し、コンパイル時には発生しません。

    org.apache.jsp.WEB_002dINF.views.index_jsp._jspInit(index_jsp.java:25) 
    
  2. 古いJSPを使用してもエラーがスローされますことを述べてきたように、一時的な作業フォルダをクリアしてみてください。

  3. インラインjspページが他のすべてのJSPページに含まれていることは本当に疑問ですが、そのインラインJSPが問題を引き起こしている可能性があります。

0
java.lang.NullPointerException 
    at org.apache.jsp.WEB_002dINF.views.index_jsp._jspInit(index_jsp.java:25) 

_jspInit()方法は、独自のJSPコードの一部ではありません。これはJSPの内部コードの一部です。独自のJSPコードを修正することで修正することはできません。あなたのWebアプリケーションの/WEB-INF/libフォルダにservletcontainer特定のJSP APIのJARファイルと、そのJARファイルを含めているとき

この例外は、あなたが実際に展開しているservletcontainerより異なる servletcontainerメイク/バージョンであるが典型的なもので、あなたのWARから。

/WEB-INF/libにはservletcontainer固有のライブラリを絶対に含めないでください。それらをすべて削除します。サーブレット・コンテナは、サーブレット・コンテナを提供する責任者です。 /WEB-INF/libには、Webアプリケーション固有のライブラリのみが含まれている必要があります。なぜなら、いくつかの初心者がサーブレットコンテナ固有のライブラリを/WEB-INF/libにドロップした理由の最も一般的な原因は、この回答を参照してください。How do I import the javax.servlet API in my Eclipse project?

+0

ありがとうございます。私は、GAEが1.6.3から1.6.4の間でJSP APIを更新したため、アップロードされたコンパイル済みのJSPが壊れてしまったと思います。 – Tristan

0

GAE 1.6.4 APIに切り替えると問題が解決しました。 1.6.3コンパイルされたJSPをアップロードすることによって発生している可能性があります。

関連する問題