我刚刚熟悉了 Apache JackRabbit。我已经完成了一个用于文档管理的多用户存储库。
如果有人同时使用它们,你能回答这些问题吗?
ModeShape 是否以某种方式与 JBoss 相关联?我对 JBoss AS 或任何其他 JBoss 工具没有太多经验。我看到对 tomcat 的支持,但是很多 JBossy 的东西 文档说 future 的版本应该有 UI 集成,它是遥远的 future 吗?什么样的 UI 集成会是这样?有什么东西可以使用 ModeShape,就像在带有 JackRabbit 的 Hippo CMS 的情况下一样?很遗憾Gatein 不使用它。 JackRabbit 在全文搜索、索引和文本内容的整体处理方面与 ModeShape 相比如何? CMIS 支持如何?我看到一个 Unresolved 问题 MODE-650 . Jackrabbit 受 OpenCMIS (Apache chmistry) 支持,即使在不久的将来也会支持次要类型。 支持/实用程序库怎么样,为了开发人员在使用节点时的方便 我对任何其他比较评论感兴趣,谢谢
我可以回答你的一些问题。完全披露:我是 ModeShape 的创始人和项目负责人。
简而言之,ModeShape是一个轻量级、可嵌入、可扩展的开源 JCR 存储库实现,它联合和统一来自多个系统的内容,包括文件系统、数据库、数据网格、其他存储库等。您可以使用 JCR API 访问您已有的信息,或者像传统的 JCR 系统一样使用它。
以下是 ModeShape 的一些高级功能:
支持所有 JCR 2.0 所需的特性:存储库获取;验证;阅读/导航;询问;导出;节点类型发现;权限和能力检查 支持大部分 JCR 2.0 可选功能:写入;进口;观察;工作空间管理;版本控制;锁定;节点类型管理;同名 sibling ;可排序的子节点;可共享节点;和 mix:etag
, mix:created
和 mix:lastModified
具有自动创建属性的 mixin。 支持 JCR 1.0 和 JCR 2.0 语言(例如 XPath、JCR-SQL、JCR-SQL2 和 JCR-QOM)以及基于 JCR-SQL2 全文搜索表达式语法的全文搜索语言。此外,ModeShape 支持 JCR-SQL2 的一些非常有用的扩展:
条件中的子查询 设置操作(例如,“UNION
”、“INTERSECT
”、“EXCEPT
”,每个都有可选的“ALL
”子句)限制和偏移 重复删除(例如,“SELECT DISTINCT
”)附加深度、引用和路径标准 设置和范围标准(例如,“IN
”、“NOT IN
”和“BETWEEN
”)算术标准(例如,“SCORE(t1) + SCORE(t2)
”)全外连接和交叉连接更多 从多个存储选项中进行选择,包括 RDBMS(通过 Hibernate)、数据网格(例如,Infinispan)、文件系统,或根据需要编写自己的存储连接器。 使用 JCR API 访问现有服务、文件系统和存储库中的信息。 ModeShape 连接器将外部信息投影到 JCR 存储库中,从而可能将来自多个系统的信息联合到一个工作区中。也可以编写自定义连接器来访问其他系统。 上传文件并让 ModeShape 自动解析和派生代表这些文件中内容的结构化信息。派生的信息存储在存储库中,可以像任何其他内容一样在其中查询和访问。 ModeShape 支持多种开箱即用的文件类型,包括:CND、XML、XSD、WSDL、DDL、CSV、ZIP/JAR/EAR/WAR、Java 源、Java 类文件、Microsoft Office、图像元数据和Teiid模型和 VDB。为其他文件类型编写音序器也很容易。 自动化和可扩展的 MIME 类型检测,使用文件扩展名的开箱即用检测和使用 Aperture 的基于内容的检测. 可扩展的文本提取框架,使用 Tika 对 Microsoft Office、PDF、HTML、纯文本和 XML 文件提供开箱即用的支持. 使用 JGroups 的简单集群。 将 ModeShape 嵌入到您自己的应用程序中。 RESTful API(需要部署到应用服务器中)。 这些只是其中的一些亮点。有关这些和其他 ModeShape 功能的详细信息,请参阅 ModeShape
documentation .
现在,这里是您编号问题的一些具体答案:
ModeShape 托管在 JBoss.org 并使用/集成其他 JBoss 技术,因为我们认为最好重用同类最佳库。但是 ModeShape 绝对与 JBoss 应用服务器无关 . ModeShape 可以以与其他 JCR 实现(通常嵌入到 Web 应用程序)大致相同的方式在其他应用程序服务器上使用。另外, ModeShape 可以嵌入到任何应用程序中 ;毕竟,它只是一个普通的 Java 库。它甚至使用 SLF4J,以便 ModeShape 日志消息可以发送到应用程序的日志框架。
现在,话虽如此,我们确实让 deploy ModeShape to a JBoss AS installation 变得更容易了。使用一个简单的工具包:只需解压缩,稍微自定义配置(取决于您的需要),然后启动您的应用服务器。 ModeShape 将作为应用程序服务器内的服务运行,允许您部署的应用程序简单地查找、使用和共享存储库。甚至可以使用 JBoss AS 控制台监控 ModeShape。 我相信您指的是我们开发存储库可视化工具(远不及成熟的 CMS 系统)的计划。这方面的工作最近才刚刚开始,我们欢迎任何见解、功能要求以及与我们合作的兴趣。我知道 Magnolia 可以在 ModeShape 之上运行,但不确定其他 CMS 应用程序是否能够做到这一点。 JBoss Enterprise Data Services (EDS) platform还包括 ModeShape 并将其用作元数据存储库。 JBoss Business Rules Management System也可以使用 ModeShape 作为其 JCR 存储库。 ModeShape 和 Jackrabbit 都在内部使用 Lucene 进行全文搜索和查询。在这方面,它们非常相似。当然,ModeShape 对搜索和查询解析和执行的实现与 Jackrabbits 不同,实际上是由实现 MetaMatrix 面向关系的集成和联合引擎(现在是 JBoss EDS 的一部分)的一些人编写的。因此,ModeShape 对其每种查询语言都有一个单独的解析器,但之后所有查询的所有验证、计划、计划和执行都以相同的方式完成。我们为我们的查询引擎的功能和性能感到非常自豪! ModeShape 没有连接到其他 CMIS 系统的连接器,但正如您指出的那样,它目前正在运行 ( MODE-650 )。我们还希望与 Apache Chemistry 团队合作,以确保 JCR 适配器与 ModeShape 配合使用。我们只是没有时间这样做。 ModeShape 确实有一个 JcrTools可能证明有用的实用程序类。但是在 JCR API 之上编写的任何实用程序类都应该可以正常工作。 希望有帮助!