OpenCms Logo

Navigation: 6.0 b 3 notes | 6.0 b 2 notes | 6.0 b 1 notes | 6.0 a 3 notes | 6.0 a 2 notes | 6.0 a 1 notes | 5.0 final release notes | 5.0 rc 2 notes | 5.0 rc 1 notes | 5.0 beta 2 notes | Installation | 4.x to 5.0 upgrade info | Mailing list | Welcome to OpenCms

Release Notes for OpenCms 6.0 beta 3

04/28/2005: This is the third public binary BETA release of OpenCms 6.0. OpenCms 6.0 is a major upgrade, and it vastly expands the features of OpenCms 5.0. The beta 3 features important enhancements as the improvement of SQL queries, the implementation of tablegalleries and many extensions of the "templateone" module. It also contains numerous fixes applied since 6.0 beta 2. We are confident that this third beta release is pretty stable, since 6.0 is already used successfully in quite a lot of "live" installations.

Who should use this 6.0 beta 3 version?

This is a beta version. Please don't expect it to be perfectly stable.

Having said that, we believe that this 6.0 beta 3 version is certainly stable enough to be used in a production system. It's likely to be more stable than the current "stable" 5.0.1 release. The main reason for still being in "beta" status is that we want to fully re-write the Workplace "Administration" view before we announce 6.0 as finished.

If and how you should use this version depends on what your goals are:

  • If you are starting a new OpenCms project, you should use this 6.0 beta 3 and not 5.0.1.
  • If you are currently using any previous 6.0 development release (e.g. 6.0 alpha 1, 2, 3 or beta 1, 2), you should upgrade to this new version in case you have encountered issues with the release you are using. If this is not the case, you may as well wait until the 6.0 final release is out.
  • If you are running a website based on OpenCms 5.0.1, and you want to upgrade, you should wait until the final 6.0 release is available.

When will the "final" release of OpenCms 6.0 be available?

End of Q2 2005. You can help speeding up the process of development by providing feedback for this release and the following releases, especially regarding bugs. In case you find any bug, please use the OpenCms bugzilla to document it, or at least post a note to the opencms-dev mailing list. The more feedback and code contributions are made, the faster we can fix the issues and finish the development.

The most important new features in this beta 3 release compared to the beta 2 version:

  • Improvements and additions to the "templateone" demo:
    • "templateone" can now be configured to either display the "accessible" or "classical" (HTML table based) version
    • "templateone" data is displayed in the "accessible" version by default
    • "templateone" now allows individual header styles for each microsite
    • Added read-to-use "news" module to "templateone"
    • Added read-to-use "jobs" module to "templateone"
    • Added read-to-use "events" module to "templateone"
    • Added read-to-use "faq" module to "templateone"
  • New "Table gallery" feature 
    • Supports "copy & past" from spreadsheets (e.g. Ecxel) into a HTML table format
    • HTML output format of the tables can be controlled with XSLT formatting
    • Also supports uploading of CSV data which is then transformed to a HTML table
    • All correctly configured "galleries" are now automatically displayed in all WYSIWYG editors
    • "Table gallery" also available as widget for XML content 
  • Improvements of SQL queries:
    • Optimized SQL query statement for reading all resources with a certain property value
    • Applied PostgreSQL patches supplied by Antonio
  • Introduction of a "roles"-concept in OpenCms 
    • System functions are not longer accessible by "Administrators" only, they now require a certain role instead
    • This feature will be fully implemented until 6.0 final release
  • Improved Localization in OpenCms 
    • CmsMessages can now handle localized keys with MessageFormat parameters
    • Improved implementation of CmsException (and it's subclasses) to be more standard compliant
    • Improved logging configuration on system startup to allow static log members in all classes
    • Started to localize all internal OpenCms Exceptions and Log messages
    • Improved implementation for localized keys in the Workplace
    • Added utility classes to org.opencms.i18n for convenient dealing with localized core messages
  • Further improvements:
    • Final design of the "New Administration" view (almost) finished
    • It's now possible to activate and deactivate scheduled jobs and to update and remove a job from the scheduler 
    • Added "search in search result" functionality
    • Added option for nested macros in CmsMacroResolver
    • It's now possible to add the Workplace context menu configuration for a new resource type in a module
    • New "Textarea" Widget for XML content for simple multiline String input
    • Added implementation of a list "widget" for display of manageable objects in the "New Administration"
    • Updated log4j.jar to latest version 1.2.9
    • Updated quartz.jar to latest version 1.4.5
  • Resolved Issues:
    • Fixed issue in static export for binary resources
    • Fixed issue in database export of resources where a deleted "created by" user caused an Exception

The most important new features in this release compared to the 5.0.x version:

  • Multiple websites can now be managed in one OpenCms installation
  • The "Direct Edit" feature allows users to open the editor directly from the websites front-end by pushing an "Edit" button that appears on elements on the page (if the user has the permissions to edit it)
  • Using the new resource type "XmlContent", building structured content (e.g. news articles, product descriptions etc.) is really easy and requires little or no programming
  • OpenCms now comes with a highly configurable template with many advanced functions as additional default module
  • Multi-language versions of the same page and improved support for managing multi language websites is integrated
  • Build-in support for full text search in HTML, PDF, Word, Excel and Plaintext documents (based on Apache Lucene)
  • All contents in the VFS can now have a "publication date" and an "expiration date" so they can appear / disappear automatically from a website
  • Resource permissions in the VFS are now managed in ACLs instead of Unix - style
  • The OpenCms workplace has been rewritten in JSP, adding new features and much improved usability (this task is not fully finished)
  • All new, much more user friendly "Administration" pages (this task is not fully finished)
  • Full support for multibyte languages (e.g. UTF-8)
  • Files in the VFS can now have multiple "siblings", this is comparable to a "hard link" in a Unix file system and prevents broken "VFS links" automatically
  • Properties on files can be "individual" or "shared" among siblings
  • It's not poossible to configure a "secure" (e.g. https-) server for a site
  • Individual documents can be marked as secure, so that they are transmitted via this secure server
  • Optimizations of search queries for the full text search engine
  • Implement "plugin" mechanism for editors and make editors more configurable, so that other editor implementations (e.g. WYSIWYG Java Applet) can be easily integrated in the workplace
  • Added optional WYSIWYG editor implementation of the popular HtmlArea editor, this editor also works with Mozilla browsers
  • The setup wizard has been improved, also many "known issues" (e.g. regarding encoding setting and Xerces version) have been fixed
  • The module API has been rewritten from the ground up, now providing a clean interface to implement
  • Optimized the use of http headers, including use of "304 - not modified" for resources that have not been modified
  • The resource type API has been enhanced, so that resource types can be easily added without workarounds
  • The Workplace is now fully usable with Mozilla based browsers (e.g. Firefox)
  • It's not longer required to "lock" a resource in the Explorer with the context menu manually, this is done automatically if the "autolock" feature is enabled (this is also the default)
  • The static export has been fully rewritten, is also features a new "on demand" mode for export of resources
  • Implement new, cleaned up XmlPage API that replaces the old XmlTemplate for page data storage
  • The XmlPage structure is always validated by a W3C XML Schema, to prevent creation of invalid content
  • The edited pages are now stored directly in the location where they have been edited, the /system/bodies/ folder is not longer required
  • The OpenCms VFS has been made much more scalable, bottlenecks like the slow Explorer tree have been removed
  • The OpenCms user management has been made independent from the OpenCms VFS, so that other user directories can be "plugged" into the system as a separate module
  • Publishing has been rewritten and is now much faster especially with many resources
  • All resources in the OpenCms VFS now have a UUID
  • The database pooling has been replaced with DBCP from Apache Jakarta
  • All known issues with Oracle 9.x that were present in 5.0.x have been solved
  • Logging now uses log4j from Apache Jakarta
  • Heavily modified the database model and completely rewrote the database access class layer
  • The configuration is now based on a new XML structure that is read by Apache Digester (this task is not fully finished)
  • UTF-8 is now the default encoding

TODO list to be finished before OpenCms 6.0 is released:

  • The rest of the "Administration" view is to be re-implemented in the new tool API
  • Write documentation how to update from 5.0 to 6.0
  • Testing and bug fixing - your feedback is required!

Please note: The development of JMX for OpenCms and the Content Relationship Engine (CRE), both features initially intended for the 6.0 release, will not make it in the 6.0 release. We hope to add these features in a later version.

Regarding backward compatibility

OpenCms 6 will be as backward compatible as possible with the 5.x releases. Existing content from 5.x will be easily importable, automatically converted to the new format and require almost no manual modification - at least if you didn't somehow change the structure of the XML control code of the 5.0.x page files.

For the sake of a clean and structured API, we have decided to make improvements on the API level that will break existing code. This means changes of Java code in templates or custom classes will be necessary to upgrade from 5.x to 6. Most obvious will be renaming the packages from com.opencms.* to org.opencms.*. Making existing code work will hopefully be just a matter of exchanging these import statements and some minor adjustments.

We will try to provide a more detailed documentation for the upgrade procedure from 5.0 to 6.0 as part of a later release. This is on the TODO list.

Regarding support for XmlTemplates and the "Master Module"

OpenCms 6 will have support for legacy XmlTemplates, but only with an additional opencms-legacy.jar that will not be installed by default. All classes dealing with XmlTemplates will stay in the com.opencms.* packages where they are now. We consider XmlTemplate a "dead" technology and will not support it past the 6.0 release.

The "master module" technology of 5.0.x will be replaced by the new XmlContent mechanism. Therefore all database tables that are used for the master module and some others (like the "webusers" table) have been moved to a separate module org.opencms.legacy.compatibility that installs these tables if required.

Regarding version numbers and CVS build tags

In case you want to check out OpenCms from the CVS, please keep the following in mind: The CVS tag numbers for all OpenCms 6 beta releases are "build_5_7_x", e.g. 6.0 beta 3 is "build_5_7_3". Until we finally publish OpenCms 6, we will continue to use 5.x as internal CVS build tag numbers. 6 alpha had CVS build tags 5.5.x, the 6 beta now uses 5.7.x, and 6 release candidates will use 5.9.x.

Regarding compatibility with other JVMs / Servlet containers / Databases

OpenCms 6.0 beta 3 requires Java 1.4.x. or Java 1.5.x. It won't work with Java 1.3.x. We have tested only with SUNs version of the JDK. However, we have removed the dependencies from all sun.* packages that were present in OpenCms 5.0.x so it should in theory run with all compliant JVMs.

We have tested this release only on the Tomcat servlet engine. OpenCms 6.0 beta 3 works "out of the box" with Tomcat 4.1.x, Tomcat 5.0.x and Tomcat 5.5.x. No replacing of Xerces is required like in OpenCms 5.0.x. Others have reported deploying 6.0 development versions successfully on other servlet containers like BEA Weblogic, SunONE and JBoss.

On the database side, we have tested with MySQL 4.0.x, MySQL 4.1.x and Oracle 9.x. PostgresSQL support has been contributed as well thanks to Antonio Core, but we at Alkacon have not tested it. The MS SQL Server and the SAP DB port have not been updated to OpenCms 6.0 so far, and we still need volunteers for this task.

In case you run OpenCms 6.0 on components different from our default components (SUN JDK 1.4.x. / Tomcat 4.1.x, 5.0.x or 5.5.x / MySQL 4.0.x or 4.1.x / Oracle 9.x), please let us know by posting a message to the OpenCms mailing list. We intend to collect a list of "supported platforms". Also, if you had to patch some lines of code to make OpenCms 6.0 run on your platforms, please contribute these so they can be included in the official release.

How you can help

Contributions to the OpenCms core development are most welcome. Please contact in case you are interested in supporting the development of OpenCms 6, or give your feedback on the opencms-dev mailing list.

Please use our Bugzilla to report bugs in this release:

Thank you for using OpenCms and have fun with OpenCms 6.0 beta 3 :-)

Please login:

Alkacon Software © 2002-2005 Alkacon Software
The OpenCms experts