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 alpha 1

8/30/2004: This is the first public binary alpha release of OpenCms 6.0. OpenCms 6.0 is a major upgrade, and it vastly expands the features of OpenCms 5.0.

Who should use this 6.0 alpha 1 version?

This is an alpha version. Please don't expect it to be perfectly stable. One of the most important Open Source philosophies is "Release early, Release often", and this is what we intend to do with this and subsequent 6.0 releases. If and how you should use this version depends on what your goals are:

  • If you are an IT professional or a company working with OpenCms on a regular basis, you should definitely check if and how your current websites, modules and functions can be ported to the new release. Even though changes on the Java API level and changes on the DB schema are to be expected until we reach the beta or even release candidate state of the development, most of the big changes have already been made.
  • If you start a new project that is expected to go live in about 3 months, you may use this version to build your project - but be prepared for some extra work to update when new releases become available, and also for some time figuring out the so far undocumented features if these are required.
  • If you are working on a project with OpenCms 5.0.x that has a delivery date soon, you should stick to the 5.0.x version unless you absolutely require a feature of the 6.0 version.
  • If you are running a website based on OpenCms, and you plan to implement some new features in the not so far future, you should install this version on a test machine and check out the new features.

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

This will greatly depend on the 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. Currently we expect the final release of OpenCms 6.0 in the late Q4 of 2004. We are confident that we can at least reach release candidate status by this time.

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)
  • 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 / disappaer 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)
  • 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
  • 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 Exlorer 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 form 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 Exlorer 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 Jarkarta
  • All known issues with Oracle 9.x that where present in 5.0.x have been solved
  • Logging now uses log4j from Apache Jarkarta
  • 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 OpenCms workplace is still not fully implemented in JSP - all XmlTemplate using dialogs will be rewritten to JSP
  • A new mechanism for "structured content" will be implemented based on W3C XML Schema - this will eliminate the need to add new database tables (or use the "master module") for simple structured content
  • We will write a "content relation" engine for resources in the VFS - this replaces the old "channel" concept of the master module
  • More of the configuration will be transferred from opencms.properties to the new Digester XML based configuration file - however opencms.properties may stay only for the database configuration
  • The most important management functions (e.g. cache maintainance, system status) will be exposed to allow JMX containers to manage OpenCms
  • We will provide a highly configurable template with many advanced functions as additional default module
  • Documentation need to be revised for old functions and written for new functions
  • Testing and bug fixing - your feedback is required!

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.

The current 6.0 alpha 1 release still requires XmlTemplates because parts of the OpenCms Workplace are still not updated to JSP. Therefore opencms-legacy.jar is currently installed by default. This applies mostly to the "Administration" and the "Workflow" views. As soon as these are rewritten to JSP the opencms-legacy.jar will be moved to the optional org.opencms.legacy.compatibility module. This is on the TODO list.

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 alpha releases are "build_5_5_x", i.e. 6.0 alpha 1 is "build_5_5_1", 6.0 alpha 2 will be "build_5_5_2" etc. Until we finally publish OpenCms 6, we will continue to use 5.x as internal CVS build tag numbers. 6 alpha will have CVS build tags 5.5.x, 6 beta will use 5.7.x, and 6 release candidates will use 5.9.x.

Regarding compatibility with other JVMs / Servlet containers / Databases

OpenCms 6.0 alpha 1 requires Java 1.4.x. It won't work with Java 1.3.x. It has not been tested on Java 1.5.x so far, even though some variables called "enum" where renamed to avoid conflicts with Java 1.5.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 alpha 1 works "out of the box" with Tomcat 4.1.x and Tomcat 5.0.x. No replacing of Xerces is required like in OpenCms 5.0.x. Others have reported deploying pre 6.0 alpha version successfully on other servlet containers like BEA Weblogic, SunONE and JBoss.

On the database side, we have tested with MySQL 4.0.x and Oracle 9.x. 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 or default components (SUN JDK 1.4.x. / Tomcat 4.1.x or 5.0.x / MySQL 4.0.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 contributions@opencms.org 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: http://www.opencms.org/bugzilla/

Thank you for using OpenCms and have fun with OpenCms 6.0 alpha 1 :-)

 

Please login:
Username:
Password:

Alkacon Software © 2002-2005 Alkacon Software
The OpenCms experts
http://www.alkacon.com