Java 从android向servlet传递JSON对象
我正在使用下面的代码将一个文件从我的android应用程序上传到服务器,并且工作正常。现在我想把一个jsonobject也传递给servlet,我尝试了如下方法Java 从android向servlet传递JSON对象,java,android,json,servlets,Java,Android,Json,Servlets,我正在使用下面的代码将一个文件从我的android应用程序上传到服务器,并且工作正常。现在我想把一个jsonobject也传递给servlet,我尝试了如下方法 mpEntity.addPart("param",new StringBody(details.toString(),"text/plain", Charset.forName("UTF-8"))); 这里的细节是一个JSON对象,但它不工作,所以请帮助我解决这个问题 这是我在andro
mpEntity.addPart("param",new StringBody(details.toString(),"text/plain",
Charset.forName("UTF-8")));
这里的细节是一个JSON对象,但它不工作,所以请帮助我解决这个问题
这是我在android上上传文件的代码
private class AsyncCaller extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected Void doInBackground(Void... params) {
HttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(
CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1);
JSONObject obj=new JSONObject();
try {
obj.put("m1", "adad");
obj.put("m2", "adadad");
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
HttpPost httppost = new HttpPost(
"http://172.20.56.229:8084/AndroidTesting/UploadServlet");
File file = new File("/sdcard/CEA.txt");
MultipartEntity mpEntity = new MultipartEntity();
ContentBody cbFe = new FileBody(file, "image/jpeg");
mpEntity.addPart("userfile", cbFe);
httppost.setEntity(mpEntity);
System.out
.println("executing request " + httppost.getRequestLine());
HttpResponse response;
try {
response = httpclient.execute(httppost);
HttpEntity resEntity = response.getEntity();
httpclient.getConnectionManager().shutdown();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
但它不起作用:你能在这里更具体一点吗?会发生什么?任何错误消息或异常,…@Henry问题是没有错误,文件正在上载到特定文件夹。我正在尝试打印json对象。。但这是印刷价值。这是我的问题设法缩小问题的范围。客户端或服务器端是否有问题?你能调试servlet吗?它在请求中收到了什么?