The ModeShape project proudly announces that version 2.0 is now available and ready for use. As usual, the artifacts are in the JBoss Maven repository (under the “org.modeshape” group ID) and on our downloads page, and we’ve updated our Getting Started Guide, Reference Guide , and JavaDoc. ModeShape 2.0 also includes bug fixes and improvements; see the release notes complete list of bug fixes, new features, tasks, and other changes.
This is a significant milestone for us, because ModeShape 2.0 now implements the JCR 2.0 specification (JSR-283). Specifically, ModeShape supports all the JCR 2.0 required features:
- repository acquisition
- node type discovery
- permissions and capability checking
and most of the JCR 2.0 optional features:
- workspace management
- node type management
- same-name siblings
- orderable child nodes
- mix:etag, mix:created and mix:lastModified mixins with autocreated properties
ModeShape 2.0 supports five query languages: the JCR-SQL2 and JCR-QOM query languages defined in JSR-283, the XPath and JCR-SQL languages defined in JSR-170 but deprecated in JSR-283, and a search-engine-like language that is actually just the full-text search expression grammar used in the CONTAINS(…) function of the JCR-SQL2 language. See our documentation for details.
As with earlier releases, ModeShape repositories can be traditional self-contained stores, or they can federate and unify content from multiple stores, including files systems, databases, data grids, other JCR repositories, or other systems (using custom connectors). Plus, ModeShape is also able to automatically extract and store useful content from files you upload into the repository using its library of sequencers, making that information much more accessible and searchable than if it remains locked up inside the stored files. Finally ModeShape provides WebDAV and RESTful services so non-Java and remote clients can access the repository content.
The ModeShape 2.0 release has not yet passed the JSR-283 TCK. ModeShape passes nearly all (99%) of the TCK tests, but we’ve identified several issues in the TCK tests (see JCR-2648, JCR-2661, JCR-2662, and JCR-2663). Once an updated TCK becomes available, we’ll get our certification.
If you’re already using JCR 1.0, consider switching to JCR 2.0 and ModeShape. The new features and enhancements are much improved over JCR 1.0. And we’ve created a high-level migration guide to help you understand you may and may not have to change in your application.
Many, many thanks to the ModeShape community members. Our users and contributors are simply stellar! Congratulations!