C# GetRepositories(参数)抛出CmisRuntimeException

C# GetRepositories(参数)抛出CmisRuntimeException,c#,alfresco,dotcmis,C#,Alfresco,Dotcmis,大家好, 我目前正在尝试使用DotCMIS/C#连接到Alfresco(DMS),以便通过我的程序从中创建/定位/检索/归档文件 参考资料: 注意:我尝试了不同的“AtomPubUrl”来测试哪个URL可以工作 [CMIS v1.0] 对于Alfresco版本3.x:http://[host]:[port]/Alfresco/service/cmis 对于Alfresco 4.0.x和Alfresco 4.1.x:http://[host]:[port]/Alfresco/cmisatom 对

大家好,

我目前正在尝试使用DotCMIS/C#连接到Alfresco(DMS),以便通过我的程序从中创建/定位/检索/归档文件

参考资料:

注意:我尝试了不同的“AtomPubUrl”来测试哪个URL可以工作

[CMIS v1.0]
对于Alfresco版本3.x:http://[host]:[port]/Alfresco/service/cmis
对于Alfresco 4.0.x和Alfresco 4.1.x:http://[host]:[port]/Alfresco/cmisatom
对于Alfresco 4.2:http://[host]:[port]/Alfresco/api/-default-/public/cmis/versions/1.0/atom

[CMIS v1.1]
对于Alfresco 4.2:http://[host]:[port]/Alfresco/api/-default-/public/cmis/versions/1.1/atom

这是我的密码:

Dictionary参数=新建Dictionary()
参数[DotCMIS.SessionParameter.BindingType]=BindingType.AtomPub


//参数[DotCMIS.SessionParameter.AtomPubUrl]=”http://localhost:8080/alfresco/service/cmis";
//抛出:“未找到”

//参数[DotCMIS.SessionParameter.AtomPubUrl]=”http://localhost:8080/alfresco/cmisatom“;

//抛出:“未经授权的”

//参数[DotCMIS.SessionParameter.AtomPubUrl]=”http://localhost:8080/alfresco/api/-默认-/public/cmis/versions/1.0/atom”
//抛出:“未经授权”

//参数[DotCMIS.SessionParameter.AtomPubUrl]=”http://localhost:8080/alfresco/api/-默认-/public/cmis/versions/1.1/atom”;

//抛出:“未经授权的”

参数[DotCMIS.SessionParameter.User]=“admin”
参数[DotCMIS.SessionParameter.Password]=“admin”
SessionFactory=SessionFactory.NewInstance()
ISession session=factory.GetRepositories(参数)[0].CreateSession()

以前,我遇到一个异常CmisRuntimeException-“发送失败”,但现在它变为“未找到”/“未授权

有人能解释一下为什么我会遇到这些错误吗?或者我的代码有什么问题

提前谢谢!

顺致敬意,


祝你度过愉快的一天。

将评论升级为答案

您需要为正在运行的Alfresco版本使用正确的CMIS服务URL。尝试在5.x服务器上使用3.x URL不太可能奏效。您可以在给定版本的文档中找到该版本的CMIS服务URL,也可以从

其次,您需要对CMIS服务器进行身份验证。您不必使用admin,但需要使用有效的凭据

假设您有一台4.2服务器,其管理员帐户名为
admin
,密码为
admin
,那么您可能需要类似

parameters[DotCMIS.SessionParameter.AtomPubUrl] = "http://localhost:8080/alfresco/api/-default-/public/cmis/versions/1.1/atom";
parameters[DotCMIS.SessionParameter.User] = "admin ";
parameters[DotCMIS.SessionParameter.Password] = "admin";
SessionFactory factory = SessionFactory.NewInstance();
ISession session = factory.GetRepositories(parameters)[0].CreateSession();

你想和哪个版本的Alfresco聊天?嗨,Gagravarr,我的安装程序说“Alfresco-enterprise-5.0.0.5-installer-win-x64”。Alfresco 5.0使用4.2样式的URL,所以其他的URL永远不会工作。请尝试使用http://[host]:[port]/alfresco/api/-default-/public/cmis/versions/1.1/atom
和服务器的有效用户名+密码[已解决]非常感谢,先生。