1

jsp apgeでJSONの機能を使用するためにnet.sf.jsonパッケージをインポートしましたが、JSONArray のオブジェクトを作成するとすぐにNoClassDefinitionFoundがスローされます。

//line 50
JSONObject responcedata=new JSONObject();


exception thrown is:
org.apache.jasper.JasperException: An exception occurred processing JSP page /jqgriddata.jsp at line 50


48: 
49: 
50:         JSONObject responcedata=new JSONObject();
51:         JSONArray cellarray=new JSONArray();
52: 
53:   //      responcedata.put("total",totalrow);


Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class net.sf.json.JSONObject
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
    org.apache.jsp.jqgriddata_jsp._jspService(jqgriddata_jsp.java:191)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

java.lang.NoClassDefFoundError: Could not initialize class net.sf.json.JSONObject
    org.apache.jsp.jqgriddata_jsp._jspService(jqgriddata_jsp.java:100)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:

260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

4

1 に答える 1

4

上記のクラスが webapp のランタイム クラスパスにないことを示しているだけです。パッケージのクラスをフォルダーに保持している JAR ファイルをダウンロードしてドロップする必要があります (必要に応じて、依存関係についても同じことを忘れないでください)。net.sf.json/WEB-INF/lib


具体的な問題とは関係ありませんが、JSP ファイルに Java コードを記述することは適切ではありません。Roseindia.net のチュートリアルを読むことも、悪い習慣を示しているだけなので、非常に悪い考えです。

于 2011-12-27T14:06:08.620 に答える