问题标签 [cmis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
190 浏览

apache - CMIS:在服务器端缓存数据

我正在为我的应用程序编写一个 CMIS 接口(服务器)。服务器需要从数据库加载数据来处理请求。目前我正在为每个请求加载相同的数据。

有没有一种常用的方法来缓存这些数据。每个 cmis 客户端都支持 cookie 吗?还有其他机会缓存这些数据吗?

谢谢

0 投票
2 回答
1665 浏览

cmis - 文件网中的选择列表

我正在学习 CMIS 和 Filenet P8 。为 CMIS 使用库 apache-chemistry。我在 ChoiceList 中有问题。

选择列表与 PropertyDefination 相关联。我试图显示与每个 PropertyDefinition 相关的选择列表。

输出

// 对于 propertyDefination 主题,有一个选择列表,但它显示为 null.. 我无法正确检索选择列表。

我该如何解决这个问题?

0 投票
1 回答
213 浏览

java - 在 CMIS 中创建文档

您能否告诉我是否有可能创建父文档是另一个文档。

现在我得到错误:该对象的存储库不支持操作!

0 投票
2 回答
662 浏览

sharepoint - 在对 SharePoint CMIS 连接器的查询中包含谓词

我们在对 SharePoint 2010 执行 CMIS 查询时遇到问题。

CONTAINS谓词仅在通过本机 API 连接时才在WHERE子句中起作用。它无法通过 CMIS 连接器工作,并出现以下错误:

SharePoint 版本详细信息:

微软SharePointTeamServices:14.0.0.6029

Microsoft SharePoint Server 2010(不是 Foundation)

0 投票
1 回答
1265 浏览

alfresco - 设置 alfresco open-cmis-extension

我正在开发一个 Liferay portlet,它通过 Cmis 和 wsdl 绑定连接到 Alfresco 存储库,(BINDING_TYPE = BindingType.WEBSERVICES)

到目前为止,我已经实现了大部分必需的功能(浏览、文件夹/文档管理、文档版本、权限等)。现在是时候实现一些与方面相关的功能了,所以是时候使用 alfresco open-cmis-extensions 了,这似乎是一个简单的过程。

我必须做的一件事是将会话工厂更改为“AlfrescoObjectFactoryImpl”

之后,我仍然可以成功获取会话,但是一旦我尝试获取任何存储库文件夹,我就会在文件夹属性被转换时收到 InvalidArgumentException


我的调试日志:

!12:51:11,542 调试 CmisWebServicesSpi:58 - 初始化 Web 服务 SPI ... 12:51:11,692 调试 AbstractPortProvider:244 - 初始化 Web 服务 org.apache.chemistry.opencmis.binding.webservices.ObjectService ... 12:51: 16,426 调试 PortProvider:65 - 创建 {http://docs.oasis-open.org/ns/cmis/ws/200908/}ObjectService ... 的 Web 服务端口对象... 12:51:36,103 错误 [render_portlet_jsp:154] java .lang.IllegalArgumentException:未知方面属性:http ://docs.oasis-open.org/ns/cmis/core/200908/ 在 org.alfresco.cmis.client.impl.AlfrescoObjectFactoryImpl.convertProperties(AlfrescoObjectFactoryImpl.java:265) 在 org.apache.chemistry.opencmis.client.runtime.AbstractCmisObject.initialize(AbstractCmisObject.java:108) 在 org.alfresco.cmis .client.impl.AlfrescoFolderImpl.initialize(AlfrescoFolderImpl.java:46) 在 org.apache.chemistry.opencmis.client.runtime.FolderImpl.(FolderImpl.java:69) 在 org.alfresco.cmis.client.impl.AlfrescoFolderImpl。 (AlfrescoFolderImpl.java:39) .........................


我正在使用:Liferay 6.1 和 alfresco-opencmis-extension-0.3.jar

并且存储库是 alfresco Community - v4.0.0 (4003)


到目前为止,我最好的猜测是某些属性定义未正确设置,因为命名空间是作为方面属性传递的

对我做错了什么有任何想法吗?

请注意,我还没有尝试做任何与方面相关的事情。通过注释掉“OBJECT_FACTORY_CLASS”参数,一切正常!

0 投票
1 回答
1906 浏览

java - 有效的 CMIS 查询

我与 Alfresco 和 OpenCMIS 合作,想要获取文件夹和文档。

询问:

但它不起作用。请帮我编写有效的查询。

0 投票
1 回答
313 浏览

url - CMIS 的标准 URL 格式?基本 URL + 存储库 + 本地路径

通过 URL,是否有一种标准方式来表示特定CMIS服务器的给定存储库的子文件夹的方式?

例如:

  • CMIS 服务器:http://server/alfresco/service/cmis
  • 此服务器中的存储库:myrepo7
  • 此存储库中的子文件夹:proposals/eurostar/

有没有一种标准的方式来表达整个事情作为一个 URL?

如果我用斜杠加入整个事情,我将无法判断哪一部分是回购:

也许有破折号或其他东西的语法?

0 投票
1 回答
1428 浏览

c# - DotCMIS/Alfresco:调用 GetRootFolder 时出现“XML 文档中的错误”

使用DotCMIS,我可以成功启动到Alfresco 4.0.1 CMIS 服务器的会话。
但是当我打电话时session.GetRootFolder(),我得到以下异常:

一个重要的部分似乎是:Read by order only possible for encoded/bare format

我的代码几乎直接来自教程

我错过了什么?

在调试模式下,我可以DotCMIS.Client.Impl.Session.GetObject (objectId="workspace://SpacesStore/77acb21f-811c-49a3-be4d-5cc7f177f461"在堆栈中看到,不确定它的含义,但77acb21f-811c-49a3-be4d-5cc7f177f461确实是 Alfresco 的节点引用company_home

http://localhost:8080/alfresco/service/cmisatom如果我在上面的代码中将 URL 更改为,Not Found则会在前面的GetRepositories行中出现错误。所以我很确定我的网址是正确的。

我下载了 DotCMIS 源代码,现在正在 Monodevelop 中调试它。

使用 Wireshark,我已经确定了发生异常的数据包:

它是有效的 XML。

0 投票
1 回答
1054 浏览

c# - 通过 DOTCMIS 连接到 Sharepoint 2010:异常身份验证提供程序

我正在尝试使用 C# 中的 DOTCMIS 连接到 sharepoint 2010。以与这个问题非常相似的方式:

通过 CMIS (dotCMIS) 连接到 SP2010:异常未授权

(但是,我的代码在 MSCRM 2011 自定义工作流活动中运行)

我的代码是:

但是,每当我运行它时,我目前都会遇到以下异常:

Sif 一般错误:DotCMIS.Exceptions.CmisRuntimeException:无法加载身份验证提供程序:值不能为空。参数名称:类型---> System.ArgumentNullException:值不能为空。2 sessionParameters, AbstractAuthenticationProvider authenticationProvider) --- End of inner exception stack trace --- at DotCMIS.Binding.Impl.CmisBinding..ctor(IDictionary参数名称:DotCMIS.Binding.Impl.CmisBinding..ctor(IDictionary 2 sessionParameters, AbstractAuthenticationProvider authenticationProvider) 处的 System.Activator.CreateInstance(Type type, Boolean nonPublic) 处的类型DotCMIS.Client.Impl.CmisBindingHelper.CreateAtomPubBinding(IDictionary2 parameters, AbstractAuthenticationProvider authenticationProvider) at DotCMIS.Client.Impl.SessionFactory.GetRepositories(IDictionary2个参数,IObjectFactory objectFactory, AbstractAuthenticationProvider authenticationProvider, ICache cache) at TPR.SIF.WorkflowActivity.SessionService.CreateNewSession(String dmWebServiceUrl, String userName, String password) at TPR.SIF.WorkflowActivity.SifService.SetUpServices(CodeActivityContext codeActivityContext) at TPR.SIF .WorkflowActivity.SifService.Execute(CodeActivityContext codeActivityContext)

错误发生在以下行:

在 CMIS 库中调用此行

有谁知道为什么不能创建“DotCMIS.Binding.NtlmAuthenticationProvider” ?

非常感谢。

肖恩。

0 投票
1 回答
1054 浏览

liferay - Open Cmis API 无法访问 Alfresco 的“继承父空间权限”

我正在开发一个类似于“文档和媒体”的 Liferay Portlet,它连接到一个 Alfresco 存储库,并使用 apache chemistry open cmis API 与存储库项进行交互。

我几乎完成了通过 ACE 应用权限的工作,但我遇到了一个主要问题,即处理 alfresco 的“继承父空间权限”功能,该功能将父文件夹的属性传播给所有子文件夹。cmis 似乎不支持此功能,但我必须找到一种方法从 liferay 编辑此属性。

尽管没有任何可用的高级 API 来编辑此属性,但我想我可以通过使用 Alfresco 的 REST API 来解决问题。也许做这样的事情

但在这样做之前,我想确保没有其他方法可以做到这一点。我的意思是,这是这里缺少的一个非常重要的功能。如果我理解正确,如果您无法访问该属性,您可以选择:

  1. 禁用所有项目的继承,并失去继承和 ACL 传播的好处。

  2. 或者为所有空间启用继承,并且由于 ACL 的工作方式类似于授予规则(而不是限制规则),因此当您在存储库中更深入地导航时,子资源的限制总是更少。这样,您最终将所有受限资源都非常接近“公司主页”空间,并将高可用性资源置于存储库空间结构的非常深处。

  3. 或者启用继承,并且每次您想从子资源中删除单个权限时,从另一个较低级别的 API 调用 alfresco,禁用继承(并丢失所有传播的 ACE,无论是否需要),然后添加再次是必要的王牌。

这对我来说听起来不合理,所以我真的担心我在这里遗漏了一些东西,比如一个主要的高级 API 功能。有人可以告诉我我是否走在正确的轨道上,以及较低级别的 API 调用是否是唯一可用的选项?