我正在使用dotCMIS,并希望与我的SP2010服务器进行简单的连接。我试图在第一部分使用C#这样http://chemistry.apache.org/dotnet/getting-started-with-dotcmis.html
所以我有这样的事情:
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
答案 0 :(得分:2)
您的AtomPubUrl看起来很可疑。我不知道这是否是您添加的占位符,以掩盖真实的URL或者这是您正在使用的实际URL。如果是实际的URL,则看起来它缺少AtomPub服务文档的路径。要判断是否是这种情况,您应该能够调用URL,登录并获取一堆XML,这是CMIS服务描述符。如果您正在获得一个充满HTML的面向用户的页面,那么您使用的是错误的URL。
例如,在Alfresco中,用户登录/共享,但AtomPub绑定位于/ alfresco / cmisatom。
答案 1 :(得分:1)
是的AtomPubUrl错了。
对于sharepoint,它不足以将默认的sp url(http://mysharepoint
)或url发布到cmis lib(http://mysharepoint/cmis
)
我需要指向存储库id,不知何故CMIS的sp端点是:
http://mysharepoint/_vti_bin/<myLib4CMIS>/<repID>?getRepositoryInfo
http://technet.microsoft.com/en-us/library/ff934619.aspx
不知怎的,它令人困惑,但它的工作:) dotCMIS非常好。