Raphaël Bosc created CMIS-1016:
----------------------------------
Summary: 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://10.86.85.109: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)