android - Simultaneous volley request always returns Server error -
i trying develop android application in hitting server api using volley. have made singleton requestqueue object , sending multiple json request 1 after other. when send first request, receive json object without error. parsing json, extracting ids , again making url , making volley request. time, getting "com.android.volley.servererror". below code:
jsonobjectrequest jreq = new jsonobjectrequest(request.method.get, url, (string) null, new response.listener<jsonobject>() { @override public void onresponse(jsonobject jsonobject) { final volleyparser vp = new volleyparser(); arraylist<integer> searchids = vp.parsejsonobject(jsonobject, kf, null); r.cancelall("saz"); for(integer id : searchids) { final fetch pf = new productfetch(); string url = pf.searchurl(id.tostring()); jsonobjectrequest jreqnext = new jsonobjectrequest(request.method.get, url, (string) null, new response.listener<jsonobject>() { @override public void onresponse(jsonobject jsonarray) { log.i("saz", "product rec"); vp.parsejsonobject(jsonarray, pf, null); } }, new response.errorlistener() { @override public void onerrorresponse(volleyerror volleyerror) { log.i("saz", "pro "+volleyerror.tostring()); } }); /**//*(request.method.post, url, (string) null, new response.listener<jsonobject>() { @override public void onresponse(jsonobject jsonobject) { log.i("saz","product rec"); vp.parsejsonobject(jsonobject, pf, null); } }, new response.errorlistener() { @override public void onerrorresponse(volleyerror volleyerror) { log.i("saz", volleyerror.tostring()); } });*/ jreqnext.setretrypolicy(new defaultretrypolicy( 9000, defaultretrypolicy.default_max_retries, defaultretrypolicy.default_backoff_mult)); r.add(jreqnext); } }}, new response.errorlistener() { @override public void onerrorresponse(volleyerror volleyerror) { log.i("saz", "search "+volleyerror.tostring()); } }); r.add(jreq); }
please give more explanation server error looks getting volley
server timeout
error. please increase request timeout one min
, see results. increase timeout yourrequest.setretrypolicy(new defaultretrypolicy(60000, defaultretrypolicy.default_max_retries, defaultretrypolicy.default_backoff_mult));
Comments
Post a Comment