[ https://issues.apache.org/jira/browse/CMIS-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15901614#comment-15901614 ]
Raphaël Bosc edited comment on CMIS-1016 at 3/8/17 8:24 PM: ------------------------------------------------------------ I think I found a solution : http://stackoverflow.com/questions/6343166/how-to-fix-android-os-networkonmainthreadexception It is not related to OpenCMIS. Thank you for your help and sorry for the inconvenience. was (Author: rbosc): I think I found a solution : http://stackoverflow.com/questions/6343166/how-to-fix-android-os-networkonmainthreadexception It is not related to OpenCMIS, sorry for the inconvenience. > Android and OpenCMIS connection issue > ------------------------------------- > > Key: CMIS-1016 > URL: https://issues.apache.org/jira/browse/CMIS-1016 > Project: Chemistry > Issue Type: Bug > Components: opencmis-android > Affects Versions: OpenCMIS 1.0.0 > Environment: Client : Windows 7, Android Studio, Eclipse > Server : RedHat 6.3, EMC Documentum CMIS > Reporter: Raphaël Bosc > Assignee: Jean Marie PASCAL > Priority: Blocker > > Hello, > I try to use Apache OpenCMIS under Android Studio to connect to a repository. > Unfortunately, I get the following error : > org.apache.chemistry.opencmis.commons.exceptions.CmisConnectionException: > Cannot access "http://x.x.x.x:8080/emc-cmis/resources null > I decided to test the same code under Eclipse in a simple class : it works. > When debugging the class which throwed the exception in Android Studio, I > noticed that it uses the class > com.android.okhttp.internal.huc.HttpURLConnectionImpl to connect. > In Eclipse the class used to connect is java.net.URLConnection. > As far as I understand OpenCMIS is not compatible with > com.android.okhttp.internal.huc.HttpURLConnectionImpl. > Version of Android : 7.1.1 > Here is the code : > SessionFactory factory = SessionFactoryImpl.newInstance(); > Map<String, String> parameter = new HashMap<String, String>(); > // connection settings > parameter.put(SessionParameter.ATOMPUB_URL,"http://x.x.x.x:8080/emc-cmis/resources"); > parameter.put(SessionParameter.BINDING_TYPE, BindingType.ATOMPUB.value()); > parameter.put(SessionParameter.AUTH_HTTP_BASIC, "true"); > parameter.put(SessionParameter.USER, ""); > parameter.put(SessionParameter.PASSWORD, ""); > List<Repository> repositories = factory.getRepositories(parameter); > Full stack trace : > E/MessageQueue-JNI: > org.apache.chemistry.opencmis.commons.exceptions.CmisConnectionException: > Cannot access "http://x.x.x.x:8080/emc-cmis/resources null > at > org.apache.chemistry.opencmis.client.bindings.spi.http.DefaultHttpInvoker.invoke(DefaultHttpInvoker.java:235) > at > org.apache.chemistry.opencmis.client.bindings.spi.http.DefaultHttpInvoker.invokeGET(DefaultHttpInvoker.java:56) > at > org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.read(AbstractAtomPubService.java:628) > at > org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.getRepositoriesInternal(AbstractAtomPubService.java:798) > at > org.apache.chemistry.opencmis.client.bindings.spi.atompub.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:64) > at > org.apache.chemistry.opencmis.client.bindings.impl.RepositoryServiceImpl.getRepositoryInfos(RepositoryServiceImpl.java:92) > at > org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:120) > at > org.apache.chemistry.opencmis.client.runtime.SessionFactoryImpl.getRepositories(SessionFactoryImpl.java:107) > at > com.cgi.tma.mobidoc.MainActivity$2.onQueryTextSubmit(MainActivity.java:82) > at > android.widget.SearchView.onSubmitQuery(SearchView.java:1283) > at > android.widget.SearchView.-wrap8(SearchView.java) > at > android.widget.SearchView$6.onEditorAction(SearchView.java:1260) > at > android.widget.TextView.doKeyDown(TextView.java:6192) > at > android.widget.TextView.onKeyDown(TextView.java:6074) > at > android.widget.AutoCompleteTextView.onKeyDown(AutoCompleteTextView.java:829) > at > android.view.KeyEvent.dispatch(KeyEvent.java:2676) > at > android.view.View.dispatchKeyEvent(View.java:9880) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1667) > at > com.android.internal.policy.DecorView.superDispatchKeyEvent(DecorView.java:403) > at > com.android.internal.policy.PhoneWindow.superDispatchKeyEvent(PhoneWindow.java:1800) > at > android.app.Activity.dispatchKeyEvent(Activity.java:3021) > at > com.android.internal.policy.DecorView.dispatchKeyEvent(DecorView.java:317) > at > android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent(ViewRootImpl.java:4327) > at > android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4298) > at > android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3849) > at > android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3902) > at > android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3868) > at > android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3995) > at > android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3876) > at > android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4052) > at > android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3849) > at > android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3902) > at > android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3868) > at > android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3876) > at > android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3849) > at > android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3902) > at > android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3868) > at > android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4028) > at > android.view.ViewRootImpl$ImeInputStage.onFinishedInputEvent(ViewRootImpl.java:4189) > at > android.view.inputmethod.InputMethodManager$PendingEvent.run(InputMethodManager.java:2365) > > at android.view.inputmethod.InputMe -- This message was sent by Atlassian JIRA (v6.3.15#6346)