Multipart entity file uploading with array of files. I have mentioned the error code below, please help me resolve this issue. Exception java.lang.ArrayIndexOutOfBoundsException: length=2; index=2. Thanks in Advance.
Code:
try{
int i = 0;
HttpEntity httpEntity = null;
HttpResponse httpResponse = null;
HttpClient httpClient = new DefaultHttpClient();
int selectedImgLength = selectedItems.size();
File[] mfile = new File[selectedImgLength];
for( i = 0; i<selectedImgLength;i++){
//mfile[i]= selectedItems.get(i);// Error InCompatiable type
mfile[i] = new File(selectedItems.get(i));
}
HttpPost httpPost = new HttpPost(url);
MultipartEntityBuilder entityBuilder = MultipartEntityBuilder.create();
entityBuilder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
entityBuilder.addPart( "userfile[" + i + "]", new FileBody(mfile[i]));
HttpEntity entity = entityBuilder.build();
httpPost.setEntity(entity);
httpResponse = httpClient.execute(httpPost);
httpEntity = httpResponse.getEntity();
response = EntityUtils.toString(httpEntity);
System.out.println("POST IMAGE Response"+response);
}catch(Exception e){e.printStackTrace();}
when you do
entityBuilder.addPart( "userfile[" + i + "]", new FileBody(mfile[i]));
you have already exited the for loop and i
has become equals in size to selectedImgLength
, therefore you will get a ArrayIndexOutOfBoundsException
try changing so that adding the file to the entityBuilder
within the for loop.