2011-07-20 3 views
0

私はtomcat 5とJSONパーサーnet/sf/jsonを使用しています。私はjson-lib2.4-jdk15.jarを私のプロジェクトにインポートし、それを私のtomcatの `common/endorsed 'ディレクトリに追加します。しかし、サーブレットを起動するときに例外があります:Java Jsonパーサー

java.lang.NoClassDefFoundError: net/sf/json/JSONException 
net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:108) 
net.sf.json.JSONSerializer.toJSON(JSONSerializer.java:84) 
com.britecs.atajer.bl.json.SubCategories.getSubCategory(SubCategories.java:37) 
com.britecs.atajer.pl.json.SubCategoriesServlet.doGet(SubCategoriesServlet.java:23) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:689) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:802) 

誰かが私を助けることができますか?

答えて

3

tomcat/common/endorsed」は正しいディレクトリではありません。 tomcat/libにJARファイルをインストールしようとしましたか?

+0

ありがとう、今すぐ動作します:) –

+1

どこにでも直接Tomcatディレクトリに置く理由はありません。 JarファイルはプロジェクトのWEB-INF/libディレクトリにあり、ファイルごとに、または_war_ファイルとともにTomcatにデプロイされます。 – Codo

+1

@Codo - 良い点。ビルドプロセスの一環としてJARを 'WEB-INF/lib'の下に置くこともできます。これはコンパイルされたWARファイルの移植性を高めます。通常、Tomcatディレクトリは、同じサーバー上で実行されている複数のWebアプリケーションで必要となるJARファイルに使用されますが、ここでは適用されません。しかし、JSONパーサは、複数のWebアプリケーションが必要とする可能性が高いライブラリの良い例です。 – aroth