Reputation: 1249
I am building an Android app to predict objects in an image. I am using the Clarifai gRPC Java client for the purpose. However, I am getting a RuntimeException: An error occurred while executing doInBackground().
My code:
public class ClarifaiTask extends AsyncTask<File, Integer, Boolean> {
protected Boolean doInBackground(File... images) {
Security.insertProviderAt(Conscrypt.newProvider(), 1);
V2Grpc.V2BlockingStub stub = V2Grpc.newBlockingStub(ClarifaiChannel.INSTANCE.getGrpcChannel()).withCallCredentials(new ClarifaiCallCredentials(API_KEY));
MultiOutputResponse response = stub.postModelOutputs(PostModelOutputsRequest.newBuilder().setModelId(MODEL_ID).addInputs(Input.newBuilder().setData(Data.newBuilder().setImage(Image.newBuilder().setUrl(IMG_URL)))).build());
if (response.getStatus().getCode() != StatusCode.SUCCESS) {
throw new RuntimeException("Request failed, status: " + response.getStatus());
}
for (Concept c : response.getOutputs(0).getData().getConceptsList()) {
System.out.println(String.format("%12s: %,.2f", c.getName(), c.getValue()));
}
return true;
}
protected void onPostExecute(Boolean result) {
}
}
My error:
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
Process: com.package.name, PID: 5221
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$4.done(AsyncTask.java:415)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:381)
at java.util.concurrent.FutureTask.setException(FutureTask.java:250)
at java.util.concurrent.FutureTask.run(FutureTask.java:269)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
at java.lang.Thread.run(Thread.java:1012)
Caused by: java.lang.RuntimeException: Request failed, status: code: FAILURE
description: "Failure"
req_id: "dc2dbb8c4460e2b7e25a6bf9304ad582"
at com.package.name.ClarifaiTask.doInBackground(ClarifaiTask.java:65)
at com.package.name.ClarifaiTask.doInBackground(ClarifaiTask.java:37)
at android.os.AsyncTask$3.call(AsyncTask.java:394)
at java.util.concurrent.FutureTask.run(FutureTask.java:264)
Any help would be appreciated.
Upvotes: 1
Views: 68