我正在使用dotCMIS,并想做一个简单的连接到我的SP2010服务器。我试着用第一部分中的http://chemistry.apache.org/dotnet/getting-started-with-dotcmis.html这样的C#来做这件事
所以我有这样的东西:
Dictionary<string, string> parameters = new Dictionary<string, string>();
parameters[SessionParameter.BindingType] = BindingType.AtomPub;
parameters[SessionParameter.AtomPubUrl] = "http://mysharepoint";
parameters[SessionParameter.User] = "SPAdmin";
parameters[SessionParameter.Password] = "1234sharepoint";
SessionFactory factory = SessionFactory.NewInstance();
ISession session = factory.GetRepositories(parameters)[0].CreateSession(); //exception unathorized但是我总是得到一个例外:DotCMIS.Expcetions.CmisRunterimException: Unathorised
有什么想法吗?通过浏览器,我可以使用相同的用户/通行证登录到站点,所以这可能不是问题。起初,我认为这是因为NTLM问题(https://issues.apache.org/jira/browse/CMIS-531),但即使我正在使用parameters[SessionParameter.AuthenticationProviderClass] = "DotCMIS.Binding.NtlmAuthenticationProvider";,它也是同样的例外。那么..。这个例外对我没有真正的帮助。我希望我能得到更多的信息--也许有更好的方法?我还能尝试什么呢?谢谢!
PS:是的,在我开始使用dotCMIS之前,我确实安装并配置了MS CMIS连接器:http://technet.microsoft.com/en-us/library/ff934619.aspx
发布于 2012-06-28 18:13:21
是的,AtomPubUrl是错的。
对于sharepoint,仅将默认的sp url (http://mysharepoint)或url发送到cmis库(http://mysharepoint/cmis)是不够的,我需要指向存储库id,不知何故,CMIS的sp端点是:
http://mysharepoint/_vti_bin/<myLib4CMIS>/<repID>?getRepositoryInfohttp://technet.microsoft.com/en-us/library/ff934619.aspx
不知何故,它令人困惑,但它是有效的:) dotCMIS真的很好。
发布于 2012-06-27 23:29:35
你的AtomPubUrl看起来很可疑。我不知道这是你用来掩蔽真实URL的占位符,还是你正在使用的实际URL。如果它是实际的URL,则看起来它缺少指向AtomPub服务文档的路径。要判断是否是这种情况,您应该能够调用URL、登录并获得一组XML,这就是CMIS服务描述符。相反,如果您得到的是一个充满HTML的面向用户的页面,那么您使用的URL是错误的。
例如,在Alfresco中,用户登录到/share,但AtomPub绑定位于/alfresco/cmisatom。
https://stackoverflow.com/questions/10941809
复制相似问题