Stream: hapi
Topic: Android FATAL EXCEPTION
Raed Cran (Oct 20 2018 at 04:00):
Hello,
I'm trying to run a search query inside an Asynctask in my Android app. Everything works fine in the emulator, but in my physical device it crashes with a fatal exception:
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1 Process: com.creare.fhirapp, PID: 16517 java.lang.RuntimeException: An error occurred while executing doInBackground() at android.os.AsyncTask$3.done(AsyncTask.java:309) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354) at java.util.concurrent.FutureTask.setException(FutureTask.java:223) at java.util.concurrent.FutureTask.run(FutureTask.java:242) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818) Caused by: java.lang.NoClassDefFoundError: com.google.common.escape.Escaper$1 at com.google.common.escape.Escaper.<init>(Escaper.java:85) at com.google.common.escape.UnicodeEscaper.<init>(UnicodeEscaper.java:59) at com.google.common.net.PercentEscaper.<init>(PercentEscaper.java:85) at ca.uhn.fhir.util.UrlUtil.<clinit>(UrlUtil.java:44) at ca.uhn.fhir.util.UrlUtil.isValid(UrlUtil.java:136) at ca.uhn.fhir.parser.BaseParser.getExtensionUrl(BaseParser.java:475) at ca.uhn.fhir.parser.JsonParser.parseExtension(JsonParser.java:1056) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:916) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:1020) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:1001) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:937) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:1020) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:1001) at ca.uhn.fhir.parser.JsonParser.parseChildren(JsonParser.java:937) at ca.uhn.fhir.parser.JsonParser.doParseResource(JsonParser.java:183) at ca.uhn.fhir.parser.JsonParser.doParseResource(JsonParser.java:165) at ca.uhn.fhir.parser.BaseParser.parseResource(BaseParser.java:654) at ca.uhn.fhir.rest.client.impl.BaseClient$ResourceResponseHandler.invokeClient(BaseClient.java:537) at ca.uhn.fhir.rest.client.impl.BaseClient$ResourceResponseHandler.invokeClient(BaseClient.java:489) at ca.uhn.fhir.rest.client.impl.BaseClient.invokeClient(BaseClient.java:353) at ca.uhn.fhir.rest.client.impl.GenericClient$BaseClientExecutable.invoke(GenericClient.java:448) at ca.uhn.fhir.rest.client.impl.GenericClient$FetchConformanceInternal.execute(GenericClient.java:702) at ca.uhn.fhir.rest.client.impl.RestfulClientFactory.validateServerBase(RestfulClientFactory.java:301) at ca.uhn.fhir.rest.client.impl.RestfulClientFactory.validateServerBaseIfConfiguredToDoSo(RestfulClientFactory.java:264) at ca.uhn.fhir.rest.client.impl.BaseClient.invokeClient(BaseClient.java:210) at ca.uhn.fhir.rest.client.impl.GenericClient$BaseClientExecutable.invoke(GenericClient.java:448) at ca.uhn.fhir.rest.client.impl.GenericClient$SearchInternal.execute(GenericClient.java:1776) at com.creare.fhirapp.PatientsFragment$2.doInBackground(PatientsFragment.java:118) at com.creare.fhirapp.PatientsFragment$2.doInBackground(PatientsFragment.java:109) at android.os.AsyncTask$2.call(AsyncTask.java:295) at java.util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818)
any suggestion?
Raed Cran (Oct 26 2018 at 19:09):
Ok, I fixed this by adding the following dependency:
api 'com.google.guava:guava:26.0-android'
Last updated: Apr 12 2022 at 19:14 UTC