Website Downloads Documentation Knowledgebase Wiki Issue tracker Commercial support

1.3-M1 to 1.3-M2 upgrade

Changes (compared to Daisy 1.3 Milestone 1)

Features

  • Authentication Schemes: this enables support for multiple external authentication mechanisms, an LDAP implementation is included with Daisy. The authentication scheme to use is configurable on a per-user level. It is also possible to auto-create a user upon first login if it exists in the external system.
  • Multi-value fields: fields can now be multi-value fields (defined as part of the field type). The query language has been extended with a set of search conditions to work with these multi-value fields.
  • Multiple active roles: until now, a user always had to select one specific role. From now on, it is possible to have multiple active roles at the same time. When evaluating the ACL, you get the most permissive access of all the active roles. In the Daisy Wiki, there is a new option "Use all roles" in the role menu, which will make all roles active, except for the Administrator role. To make this the default for a user, you need to edit the user via the administration pages and set its default role to none (if the user would have only the Administrator role, then that role will be active after login).
    • Compatibility notes:
      • to accomodate this change, there have been a few API changes, most notable in the AccessManager interface or other interfaces/methods taking a role ID as argument (those now require an array of role IDs). The method Repository.getUserRole() has been replaced by Repository.getActiveRoleIds().
      • the role of the user was previously passed as a parameter to the document type specific stylesheets. As there can now be multiple active roles, this feature has been removed.
      • The aclResult XML structure has changed a little bit to accomodate for multiple active roles (the roles are now in a nested element instead of in an attribute, the permission elements have been grouped in a permissions element).
      • To specify multiple active roles when authenticating against the HTTP interface, specify them comma-separated, e.g. userlogin@1,2,3
      • To default to having no default role for users created via the registration page, comment out the <defaultRole> element in the configuration of the user registrar component (in cocoon.xconf).
  • Added a separate ACL permission for document deletion. After upgrading, this permission will for each entry be initialised to be the same as the write permission.
  • Added filename support for parts, and made the mime-type editable. The editing screen for these parts has also been improved.
  • Addition of an identifier in the query language for collections (called 'collections') which behavious the same as multi-value field identifiers, and allows the use of the same search constructs.
  • The 'publish changes immediately' flag in the document editor will now always cause the state of the last version of the document to become 'publish', even if no new version has been created as part of the current editing session. Additionally, when looking at the last-but-not-live version of a document, there is now a "Put this live" link at top of the document, avoiding the need for the user to go to the versions overview page to perform this action.
  • Added a first take at a faceted navigation browser.
  • User registrar: added the possibility to configure users for who requesting a new password should not be possible.

Bug Fixes

  • Fixed a bug whereby getting the live version of a document fails in an unexpected way if the documen doesn't have a live version.
  • Out-of line links weren't translated anymore when publishing, they remained as "daisy:" links.
  • DocumentDeleted events weren't processed correctly in the email notification mailer, causing mails for these events not to be send.

Upgrading

Before starting

Shutdown Daisy (the Repository Server, the Daisy Wiki, and the OpenJMS server)

Make backups! More specifically:

  • make a copy of the daisy data directory
  • do a dump of the database:
    mysqldump daisyrepository -uuser -ppassword > daisyrepo.sql

Update database schema

There have been changes to the database schema.

To do the appropriate changes to the MySQL database, an upgrade script is available.

To execute the upgrade script, perform the following steps in a command prompt or shell:

cd <DAISY_HOME>/misc
mysql -Ddaisyrepository -udaisy -p<password>
[then on the mysql prompt]
\. daisy-1_3_M1-to-1_3_M2.sql 

Copy over the old configuration

  • Copy <OLD_DAISY_HOME>/openjms/config/openjms.xml to <NEW_DAISY_HOME>/openjms/config/openjms.xml
  • Copy <OLD_DAISY_HOME>/daisywiki/webapp/daisy/sites/* to <NEW_DAISY_HOME>/daisywiki/webapp/daisy/sites
  • In <NEW_DAISY_HOME>/daisywiki/webapp/WEB-INF/cocoon.xconf, adjust the following passwords with the values you can find in <OLD_DAISY_HOME>/daisywiki/webapp/WEB-INF/cocoon.xconf:
    • Adjust the password for openjms user (if not left to default): <credentials password="openjms" username="admin"/>
    • Adjust the password for "internal' user: <cacheUser login="internal" password="defaultpwd"/>
    • Adjust the password for the "registrar" user: <registrarUser login="registrar" password="defaultpwd"/>
  • If you created any document type-specific stylesheets, you can copy them over also
  • If you developed a custom skin, then you'll have to update it to work with the new version. There's no easy or quick way to do this.

Edit <DAISY_HOME>/openjms/bin/setenv.(sh|bat), uncomment the line defining the CLASSPATH and put the MySQL driver in the CLASSPATH, which can be found at (substitute DAISY_HOME by its actual location):

DAISY_HOME/lib/mysql/jars/mysql-connector-java-3.0.15-ga-bin.jar

Start the servers

Start OpenJMS, the Daisy Repository Server, and the Daisy Wiki.

If necessary, first update the DAISY_HOME and OPENJMS_HOME variables to point to the location of the new Daisy version.

Note about static resources and caching

Since static resources are cached for about 5 hours by your browser, you might need to do a full reload (shift + reload button on the browsers' toolbar). Also when opening the editor for the first time do a shift + reload.

If these instructions or unclear to you, or if you find an error in them, please share them with us on the Daisy mailing list or by leaving a comment.

Comments (0)
Advertisement

Daisy hosting, installation, support. Workshops and turnkey Daisy CMS projects. Get Daisy from its creators.

outerthought.org

Downloads provided by

SourceForge.net Logo

Open source stats