C# 通过CMIS(dotCMIS)连接到SP2010:未经授权的例外

C# 通过CMIS(dotCMIS)连接到SP2010:未经授权的例外,c#,apache,sharepoint,cmis,dotcmis,C#,Apache,Sharepoint,Cmis,Dotcmis,我正在使用dotCMIS,并想做一个简单的连接到我的SP2010服务器。我试着用C#来做这件事,就像第一部分中的一样 所以我有这样的想法: Dictionary<string, string> parameters = new Dictionary<string, string>(); parameters[SessionParameter.BindingType] = BindingType.AtomPub; parameters[Session

我正在使用dotCMIS,并想做一个简单的连接到我的SP2010服务器。我试着用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
Dictionary参数=新建Dictionary();
参数[SessionParameter.BindingType]=BindingType.AtomPub;
参数[SessionParameter.AtomPubUrl]=”http://mysharepoint";
参数[SessionParameter.User]=“SPAdmin”;
参数[SessionParameter.Password]=“1234sharepoint”;
SessionFactory=SessionFactory.NewInstance();
ISession session=factory.GetRepositories(参数)[0].CreateSession()//异常未被忽略
但我总是得到异常:
DotCMIS.expections.CmisRunterimException:unhorised

有什么想法吗?通过浏览器,我可以使用相同的用户/通行证登录到该站点,因此这可能不是问题所在。起初,我之所以这么做是因为NTLM问题(),但即使我使用
参数[SessionParameter.AuthenticationProviderClass]=“DotCMIS.Binding.NtlmAuthenticationProvider”这是相同的异常。而且。。。这个例外并没有真正帮助我。我希望我能得到更多的信息-也许有更好的方法?我还能试什么?谢谢大家!


PS:是的,在我开始使用dotCMIS之前,我确实安装并配置了MS CMIS连接器:

您的AtomPubUrl看起来可疑。我无法判断这是您添加的用于屏蔽真实URL的占位符,还是您正在使用的实际URL。如果它是实际的URL,则看起来它缺少指向AtomPub服务文档的路径。要判断是否是这种情况,您应该能够调用URL、登录并获取一堆XML,这就是CMIS服务描述符。如果您得到的是一个充满HTML的面向用户的页面,那么您使用的URL是错误的


例如,在Alfresco中,用户登录到/share,但AtomPub绑定位于/Alfresco/cmisatom。

您的AtomPubUrl看起来可疑。我无法判断这是您添加的用于屏蔽真实URL的占位符,还是您正在使用的实际URL。如果它是实际的URL,则看起来它缺少指向AtomPub服务文档的路径。要判断是否是这种情况,您应该能够调用URL、登录并获取一堆XML,这就是CMIS服务描述符。如果您得到的是一个充满HTML的面向用户的页面,那么您使用的URL是错误的


例如,在Alfresco中,用户登录到/share,但AtomPub绑定位于/Alfresco/cmisatom。

是,AtomPubUrl错误

对于sharepoint,仅发布默认的sp url是不够的(
http://mysharepoint
)或cmis库的url(
http://mysharepoint/cmis
) 我需要指向存储库id,CMIS的sp端点是:

http://mysharepoint/_vti_bin/<myLib4CMIS>/<repID>?getRepositoryInfo
http://mysharepoint/_vti_bin//?getRepositoryInfo


不知怎的,它让人困惑,但它的工作原理是:)dotCMIS真的很好。

是的,AtomPubUrl是错误的

对于sharepoint,仅发布默认的sp url是不够的(
http://mysharepoint
)或cmis库的url(
http://mysharepoint/cmis
) 我需要指向存储库id,CMIS的sp端点是:

http://mysharepoint/_vti_bin/<myLib4CMIS>/<repID>?getRepositoryInfo
http://mysharepoint/_vti_bin//?getRepositoryInfo

不知怎的,它让人困惑,但它的工作:)dotCMIS真的很好