Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java servlet中的JSONObject错误_Java_Json_Servlets_Client_Server - Fatal编程技术网

Java servlet中的JSONObject错误

Java servlet中的JSONObject错误,java,json,servlets,client,server,Java,Json,Servlets,Client,Server,我创建了一个Servlet类,用于通过android客户端接收字符串。此类将此字符串发送到另一个servlet类。 使用RESTAPI我正确地接收字符串,但当我创建JSONObject时,它抛出java.lang.ClassNotFoundException:net.sf.json.JSONObject。 这里实现的代码是: protected void doPost(HttpServletRequest request, HttpSer

我创建了一个Servlet类,用于通过android客户端接收字符串。此类将此字符串发送到另一个servlet类。 使用RESTAPI我正确地接收字符串,但当我创建JSONObject时,它抛出java.lang.ClassNotFoundException:net.sf.json.JSONObject。 这里实现的代码是:

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

            PrintWriter out= response.getWriter();

                ArrayList<String> arrivo;
                ArrayList<String> preference=new ArrayList<String>();              
                      StringBuffer jb = new StringBuffer();
                      String line = null;
                      try {
                        BufferedReader reader = request.getReader();

                        while ((line = reader.readLine()) != null)
                          jb.append(line);
                        preference.add(line);
                        response(response,"ok");
                        System.out.println(response);
                      }
    catch (Exception e) { //report an error

                   }

                      response(response,"no");

                    try {

                             String s=jb.toString();

                             arrivo=new ArrayList<String>(Arrays.asList(s.split(",")));

                      } catch (ParseException e) {

                       throw
                       new IOException("Error parsing JSON request string");
                      }
                     invio(arrivo);

                            }      
    public void invio(ArrayList<String> c){

            String pref="";
            String x=c.toString();


            StringBuilder sb = new StringBuilder();  

            String http = "http://mioserver:80808";  

            HttpURLConnection urlConnection=null;  
            try {  
                URL url = new URL(http);  
                urlConnection = (HttpURLConnection) url.openConnection();
                urlConnection.setDoOutput(true);  
                urlConnection.setRequestMethod("POST");  
                urlConnection.setUseCaches(false);  

               urlConnection.setConnectTimeout(10000);  
                urlConnection.setReadTimeout(10000);  
                urlConnection.setRequestProperty("Content-Type","application/json");  

                //urlConnection.setRequestProperty("Host","http://localhost:8080/W7TurismoServer/Servlet");

                urlConnection.connect();


               JSONObject object=new JSONObject();

               object.put("",pref);
               OutputStreamWriter out = new     OutputStreamWriter(urlConnection.getOutputStream());
                out.write(object.toString());
                System.out.println(object.toString());
                out.close();  
                int HttpResult =urlConnection.getResponseCode();  
                if(HttpResult ==HttpURLConnection.HTTP_OK){  

                    BufferedReader br = new BufferedReader(new InputStreamReader(  
                        urlConnection.getInputStream(),"utf-8"));  
                    String line = null;  
                    while ((line = br.readLine()) != null) {  
                        sb.append(line + "\n");  
                    }  
                    br.close();  


                    System.out.println(""+sb.toString());  

                }else{  
                        System.out.println(urlConnection.getResponseMessage());  
                }  

                } catch (MalformedURLException e) {  

                     e.printStackTrace();  
            }
            catch (Exception e) {  

                e.printStackTrace();  
                }
                }
protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
PrintWriter out=response.getWriter();
ArrayList arrivo;
ArrayList首选项=新建ArrayList();
StringBuffer jb=新的StringBuffer();
字符串行=null;
试一试{
BufferedReader reader=request.getReader();
而((line=reader.readLine())!=null)
jb.追加(行);
首选项。添加(行);
响应(响应“ok”);
System.out.println(响应);
}
捕获(异常e){//报告错误
}
答复(答复“否”);
试一试{
字符串s=jb.toString();
arrivo=newarraylist(Arrays.asList(s.split(“,”));
}捕获(解析异常){
投
新IOException(“解析JSON请求字符串时出错”);
}
因维奥(阿里沃);
}      
因维奥公开无效(ArrayList c){
字符串pref=“”;
字符串x=c.toString();
StringBuilder sb=新的StringBuilder();
字符串http=”http://mioserver:80808";  
HttpURLConnection-urlConnection=null;
试试{
URL=新URL(http);
urlConnection=(HttpURLConnection)url.openConnection();
urlConnection.setDoOutput(true);
urlConnection.setRequestMethod(“POST”);
urlConnection.setUseCaches(false);
urlConnection.setConnectTimeout(10000);
urlConnection.setReadTimeout(10000);
setRequestProperty(“内容类型”、“应用程序/json”);
//urlConnection.setRequestProperty(“主机”http://localhost:8080/W7TurismoServer/Servlet");
urlConnection.connect();
JSONObject对象=新的JSONObject();
object.put(“,pref);
OutputStreamWriter out=新的OutputStreamWriter(urlConnection.getOutputStream());
out.write(object.toString());
System.out.println(object.toString());
out.close();
int-HttpResult=urlConnection.getResponseCode();
如果(HttpResult==HttpURLConnection.HTTP_OK){
BufferedReader br=新的BufferedReader(新的InputStreamReader(
urlConnection.getInputStream(),“utf-8”);
字符串行=null;
而((line=br.readLine())!=null){
sb.追加(第+行“\n”);
}  
br.close();
System.out.println(“+sb.toString());
}否则{
System.out.println(urlConnection.getResponseMessage());
}  
}捕获(格式错误){
e、 printStackTrace();
}
捕获(例外e){
e、 printStackTrace();
}
}

我如何解决这个问题?先谢谢你

json lib.jar
(或类似名称)可能不在tomcats类路径中。确保它在您的war文件
lib
directory是的,我已经在lib目录中添加了这个jar,但问题是这个。