0

GAE にデプロイされたサーブレットを呼び出すスクリプトをブラウザーで作成しました。サーブレットは Datastore を使用します。サーブレットが呼び出されるたびに、次のエラーが表示されます

Uncaught exception from servlet java.lang.NoClassDefFoundError: org/json/JSONException

開発にはEclipseとMavenを使用しています。

pom.xml には、org.json 20090211 と javax.validation が既に含まれています。

更新 私の質問をより明確にするために、サーブレットからコードを投稿しています

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        StringBuilder sb = new StringBuilder();
        BufferedReader br = request.getReader();
        String str;

        while ((str = br.readLine()) != null) 
        {
            sb.append(str);

        }

        String jsonResp = sb.toString();

        JSONParser gparser = new JSONParser();

問題は最後の行に表示されるため、JSONParser からコードを投稿しています

public class JSONParser {

public ArrayList<String> ReturnGoogleJSON(String ResponseString) throws IOException {



    ArrayList<String> Row = new ArrayList<String>();         

    try {
        JSONObject rootObject = new JSONObject(ResponseString); // Parse the JSON to a JSONObject

        JSONArray rows =  rootObject.getJSONArray("items") ; // Get all JSONArray rows

        for(int i=0; i < rows.length(); i++) { // Loop over each each row

                JSONObject element =  rows.getJSONObject(i); // Get the element object

                Row.add(element.getString("tag"));
                Row.add(element.getString("link"));
                Row.add(element.getString("priority"));   



        }
    } catch (JSONException e) {

        e.printStackTrace();
    }
    return  Row;

}

}

誰かがこの種のエラーで私を助けてくれますか?

前もって感謝します。

4

1 に答える 1

0

アップロードする前に、Eclipse でプロジェクトの war/WEB-INF/lib ディレクトリを確認し、json およびその他の依存ファイルがこのディレクトリに存在することを確認してください。

編集: 確認したい場合があります:

于 2013-05-29T11:47:57.940 に答える