Android Retrofit okhttp error -


i using retrofit , okhttp network requests in app. while trying make login request, see when fresh install, works fine. 200 response when try log out , log in, exception in logs.has see such issue. please help.

java.lang.illegalstateexception: cache closed d/retrofit:     @ com.squareup.okhttp.internal.disklrucache.checknotclosed(disklrucache.java:630) d/retrofit:     @ com.squareup.okhttp.internal.disklrucache.get(disklrucache.java:424) d/retrofit:     @ com.squareup.okhttp.cache.get(cache.java:184) d/retrofit:     @ com.squareup.okhttp.cache$1.get(cache.java:139) d/retrofit:     @ com.squareup.okhttp.internal.http.httpengine.sendrequest(httpengine.java:226) d/retrofit:     @ com.squareup.okhttp.call.getresponse(call.java:267) d/retrofit:     @ com.squareup.okhttp.call$applicationinterceptorchain.proceed(call.java:224) d/retrofit:     @ com.squareup.okhttp.call.getresponsewithinterceptorchain(call.java:195) d/retrofit:     @ com.squareup.okhttp.call.execute(call.java:79) d/retrofit:     @ retrofit.client.okclient.execute(okclient.java:53) d/retrofit:     @ retrofit.restadapter$resthandler.invokerequest(restadapter.java:326) d/retrofit:     @ retrofit.restadapter$resthandler.invoke(restadapter.java:240) d/retrofit:     @ java.lang.reflect.proxy.invoke(proxy.java:397) d/retrofit:     @ $proxy3.storelist(unknown source) 

i resolved bug. not setting "ref" null when log out , close disk. hence when log in, caused exception.

restadapter restadapter = new restadapter.builder()             .setconverter(new gsonconverter(new gson()))             .setexecutors(newasyncexecutor(), useasynccallbacks ? newasyncexecutor() : newmainthreadexecutor())             .setclient(getretrofitclient())             .setendpoint(serverurl)             .setrequestinterceptor(new requestinterceptor() {                 @override                 public void intercept(requestfacade requestfacade) {                     requestfacade.addheader("accept", "application/json");                 }             }); myclass ref = restadapter.create(myclass.class); 

here problem disklrucache class:

  /** returns true if cache has been closed. */   public synchronized boolean isclosed() {     return closed;   }    private synchronized void checknotclosed() {     if (isclosed()) {       throw new illegalstateexception("cache closed");     }   } 

so think, better give answer on how handle situation give errors, should post piece of code error.


Comments

Popular posts from this blog

1111. appearing after print sequence - php -

java - WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/board/] in DispatcherServlet with name 'appServlet' -

Ruby on Rails, ActiveRecord, Postgres, UTF-8 and ASCII-8BIT encodings -