我可以回答大家的一些問題。完全披露:我是ModeShape的創始人和項目負責人。
簡而言之,ModeShape是一個輕量級的,可嵌入的,可擴展的開源JCR存儲庫的實現,聯邦成員和來自多個系統,包括文件系統,數據庫,數據網格,其他存儲庫等。您可以使用JCR API訪問統一內容您已有的信息,或者像傳統的JCR系統一樣使用它。
下面是一些振型的更高級別的功能:
- 支持所有的JCR 2.0所需的功能:存儲庫採集;認證;讀/導航;查詢;出口;節點類型發現;權限和能力檢查
- 支持大部分JCR 2.0可選功能:寫入;進口;觀察;工作區管理;版本;鎖定;節點類型管理;同名兄弟姐妹;可訂購的子節點;可共享節點;和
mix:etag
,mix:created
和mix:lastModified
mixin具有自動處理的屬性。
- 支持基於JCR-SQL2全文搜索表達式語法的JCR 1.0和JCR 2.0語言(例如XPath,JCR-SQL,JCR-SQL2和JCR-QOM)以及全文搜索語言。另外,振型支持一些非常有用的擴展到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模型和VDBs。爲其他文件類型編寫順序器也很容易。
- 自動和可擴展的MIME類型檢測,使用文件擴展名和基於內容的檢測使用Aperture進行即時檢測。
- 可擴展的文本提取框架,使用Tika可爲Microsoft Office,PDF,HTML,純文本和XML文件提供開箱即用的支持。
- 使用JGroups進行簡單的羣集。
- 將ModeShape嵌入到您自己的應用程序中。
- RESTful API(需要部署到應用程序服務器中)。
這些只是一些亮點。有關這些和其他ModeShape功能的詳細信息,請參閱ModeShape documentation。
現在,這裏有一些具體的解答您的問題編號:
振形在JBoss.org託管,並使用/與其他的JBoss技術集成,因爲我們認爲它更好地重用最佳的圖書館。但是ModeShape絕對不會綁定到JBoss應用程序服務器。 ModeShape可以在其他應用程序服務器上使用,方式與其他JCR實現(通常嵌入到Web應用程序中)完全相同。另外,ModeShape可以嵌入任何應用程序;畢竟,它只是一個普通的Java庫。它甚至使用SLF4J,以便ModeShape日誌消息可以發送到應用程序的日誌框架。
現在,儘管如此,我們通過一個簡單的套件讓deploy ModeShape to a JBoss AS installation更容易:簡單地解壓縮,稍微定製一下配置(取決於您的需要),然後啓動您的應用服務器。 ModeShape將在應用程序服務器中作爲服務運行,允許您部署的應用程序簡單查找,使用和共享存儲庫。ModeShape甚至可以使用JBoss AS控制檯進行監控。
我相信你指的是我們計劃開發一個倉庫可視化工具(不是一個完全成熟的CMS系統少得多)。關於這方面的工作剛剛開始,我們歡迎任何見解,功能要求和對與我們合作的興趣。我知道Magnolia可以在ModeShape上運行,但不知道其他CMS應用程序是否可以執行此操作。 JBoss Enterprise Data Services (EDS) platform還包含ModeShape並將其用作元數據存儲庫。 JBoss Business Rules Management System也可以使用ModeShape作爲其JCR存儲庫。
振形和兔崽子都在內部使用Lucene的全文檢索和查詢。在這方面,他們非常相似。當然,振形的執行搜索和查詢分析和執行的比長耳大野兔不同,實際上是由一些實施MetaMatrix的以關係爲導向的整合&聯邦引擎(現在的JBoss EDS的一部分)相同的人編寫的。因此,ModeShape爲其每種查詢語言都有一個單獨的解析器,但在此之後,所有查詢的所有驗證,計劃,計劃和執行都以相同的方式完成。我們對查詢引擎的功能和性能感到非常自豪!
ModeShape沒有連接到其他CMIS系統的連接器,但正如您指出它目前正在工作(MODE-650)。我們還希望與Apache化學團隊合作,確保JCR適配器與ModeShape協同工作。我們沒有時間這樣做。
振形確實有JcrTools實用工具類,可能是有用的。但是在JCR API之上編寫的任何實用程序類都應該工作得很好。
希望幫助!振形的
哇,蘭德爾你可能讓我放棄了5天基於jackrabbit的倉庫工作,並將其重寫到ModeShape。大壩:-)謝謝你帶來一些見解,很好的概述。 – lisak
排序器的設計和思想是輝煌的。非常有用和易於維護 – lisak
順便說一句,你很可能已經知道,但關於用戶界面可視化,這個github.com/sourcesense/modeshape-stone是一個與Apache Sling一起運行的2.4Final分支,那怎麼辦? – lisak