You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@chemistry.apache.org by "Florian Müller (JIRA)" <ji...@apache.org> on 2012/10/19 10:30:25 UTC

[jira] [Commented] (CMIS-593) DotCMIS to IBM Connections: ArgumentException at AbstractCmisObject.Initialize

    [ https://issues.apache.org/jira/browse/CMIS-593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13479881#comment-13479881 ] 

Florian Müller commented on CMIS-593:
-------------------------------------

Looks like IBM Connections does not send a complete folder type definition, which must contain at least the 9 property definitions that are defined in spec.
You should follow up with IBM.
                
> DotCMIS to IBM Connections: ArgumentException at AbstractCmisObject.Initialize
> ------------------------------------------------------------------------------
>
>                 Key: CMIS-593
>                 URL: https://issues.apache.org/jira/browse/CMIS-593
>             Project: Chemistry
>          Issue Type: Bug
>          Components: dotcmis
>    Affects Versions: cmislib 0.5
>         Environment: Windows 7
> IBM Connections
>            Reporter: Nicolas Raoul
>
> "IBM Connections" is a Liferay-like app with a "Files" module that has a CMIS server interface.
> Credentials for the IBM Connections live demo server can be obtained at greenhouse.lotus.com but I can give Florian my credentials if bothersome.
> Not sure who is to blame: my code, Connections, or DotCMIS.
> My code (xUnit test actually):
> [Fact]
> public void DotCmisToIBMConnections()
> {
>     var cmisParameters = new Dictionary<string, string>();
>     cmisParameters[SessionParameter.BindingType] = BindingType.AtomPub;
>     cmisParameters[SessionParameter.AtomPubUrl] = "https://greenhouse.lotus.com/files/basic/cmis/my/servicedoc";
>     cmisParameters[SessionParameter.User] = "ask me or create a free account";
>     cmisParameters[SessionParameter.Password] = "ask me or create a free account";
>     SessionFactory factory = SessionFactory.NewInstance();
>     ISession session = factory.GetRepositories(cmisParameters)[0].CreateSession();
>     IFolder root = session.GetRootFolder();
>     IItemEnumerable<ICmisObject> children = root.GetChildren();
>     foreach (var folder in children.OfType<IFolder>())
>     {
>         Console.WriteLine(folder.Path);
>         IItemEnumerable<ICmisObject> subChildren = folder.GetChildren();
>         foreach (var subFolder in subChildren.OfType<IFolder>()) // Error happens here
>         {
>             Console.WriteLine(subFolder.Path);
>         }
>     }
> }
> System.ArgumentException was unhandled
>   Message=Object type must have property defintions!
>   Source=DotCMIS
>   StackTrace:
>        at DotCMIS.Client.Impl.AbstractCmisObject.Initialize(ISession session, IObjectType objectType, IObjectData objectData, IOperationContext context)
>        at DotCMIS.Client.Impl.Document..ctor(ISession session, IObjectType objectType, IObjectData objectData, IOperationContext context)
>        at DotCMIS.Client.Impl.ObjectFactory.ConvertObject(IObjectData objectData, IOperationContext context)
>        at DotCMIS.Client.Impl.Folder.<>c__DisplayClass4.<GetChildren>b__3(Int64 maxNumItems, Int64 skipCount)
>        at DotCMIS.Client.Impl.PageFetcher`1.FetchNextPage(Int64 skipCount)
>        at DotCMIS.Client.Impl.AbstractEnumerator`1.GetCurrentPage()
>        at DotCMIS.Client.Impl.CollectionEnumerator`1.MoveNext()
>        at System.Linq.Enumerable.<OfTypeIterator>d__aa`1.MoveNext()
>        at TestLibrary.ConnectionTests.DotCmisToIBMConnections() in C:\Users\nico\src\CmisSync\SparkleShare\TestLibrary\ConnectionTests.cs:line 96
> Console output:
> /files
> Might be related: http://stackoverflow.com/q/12816707 (Derek is an IBM Connections engineer)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira