0 Replies Latest reply on Jan 12, 2010 11:47 AM by Randall Hauch

    JBoss DNA 0.7

    Randall Hauch Master

      I'm pleased to announce that JBoss DNA 0.7 is now available. The JBoss DNA site has been updated with all the latest information, and the artifacts have been loaded into the JBoss Maven repository [2].  And don't forget to check out our improved Reference Guide, the updated JavaDocs, and, if you're just getting familiar with JBoss DNA, our updated Getting Started guide.


      This release is chocked full of some pretty fantastic features. So much so that I had a hard time keeping this email as short as it is!


      The short summary is this: JBoss DNA now implements all of the JCR Level 1 features, almost all Level 2 features (everything except referential integrity), and the optional locking and observation features.  This version passes more than 97% of the JCR TCK tests that cover Level 1, Level 2, locking and observation.  (All of the failures are because of referential integrity and a handful of known issues.)  Fortunately, most of these are either less-frequently-used features of JCR or issues that can be worked around.


      So, on to the features...


      The first of the new features is JCR observation, which makes it possible to receive notifications of changes being made to the repository.  We plan to heavily rely upon this feature when we add support for clustering.


      Another major feature is support for searching a JCR repository using one of three query languages. One of these languages is XPath, as mandated by the JCR 1.0 API.  Another language supported by JBoss DNA is JCR-SQL2, which is actually defined by the JCR 2.0 specification as a replacement for the (optional) JCR-SQL language define in JCR 1.0.  And the third query language is actually a simple full-text search language that accepts a series of terms and phrases, similar to web search engines.  And JBoss DNA is poised to offer other languages as well, since our query engine parses all of these languages into into a single abstract query model upon which the query planning, validation, optimization, and processing is performed. For details, see our query documentation [3].


      This release also introduces a number of new and improved connectors that really show the value of JBoss DNA and federating repositories. Both the file system connector and SVN connector were reworked to improve performance and to support updates, and they both offer a preview of an optional caching system. The JPA storage connector was dramatically improved and is now significantly faster, more capable, and more efficient. There is also a new JDBC metadata connector that provides read-only access to the schema information of relational databases through JDBC. The federated connector was also improved, and is now used in several key places within our JCR implementation. Plus, we still have connectors to Infinispan, JBoss Cache, and a simple transient in-memory store.


      There are also a number of new and improved sequencers. A new text sequencer is able to extract structured data from comma-separated or fixed-width text files. A new DDL sequencer is capable of parsing a number of DDL dialects to extract the more important DDL statements. The CND sequencer was rewritten to be much simpler, perform better, fix a number of known issues, and eliminate third-party dependencies. There is also a new Java class file sequencer that operates on Java class files and produces output that is comparable to the Java source file sequencer, and that can be used in conjunction with the ZIP file sequencer to extract the Java metadata from JARs, WARs, and EAR files. And don't forget the XML sequencer or our other sequencers for extracting metadata from images, MP3s, and Microsoft Office documents.


      We've fixed quite a few bugs, added numerous improvements, and upgraded all third-party dependencies to the latest versions available at this time. (See the release notes for details.) The build system now supports running all of the tests against a variety of databases, making it very easy to test against DBMSes that JBoss DNA doesn't directly test against. And we've added a new DDL generation utility that produces the DDL for the database schema created and used by the JPA connector. To top it all off, JCR repositories now support the use of anonymous users, though this can easily be changed for production purposes.


      Thanks to the whole JBoss DNA community for all their hard work!  The JBoss DNA contributors and users are simply fantastic, and this release was only possible because of all your efforts. And thanks to all of the users here in the forums - all of these questions, discussions, suggestions, and issues have helped us invaluably.


      Take a look at the release and the expanded and improved Getting Started and Reference Guides. Let us know what you think!