This release introduces a completely new authoring interface, the Content Editor, with lots of white space and undisturbed flow of content. Use the content editor to write news articles, blog posts and press releases – anything that is a mix of structured form fields and free-flow composition. You can publish content directly from the editor which helps get new information out without delay.
Changes for authors
New editor for easy content creation
Content Editor is a new editing interface that lets authors create content easily and publish it instantly. The new editor provides ample white space and an undisturbed flow of content. It is ideally suited for long-form content where you mix structured form fields and free-flowing composition such as news articles, blog posts, product pages and press releases.
The new Stories app provides a ready-to-use implementation of the content editor and is included in the Magnolia enterprise bundles. Customize the Stories app to suit your needs, or use it as a blueprint to create your own content editor app. The Magnolia travel demo provides sample content and pages to demonstrate the capabilities of the content editor.
- Easy content creation. You don't need to be a CMS expert to compose and publish content. Now you can let any type of author create rich and reusable content. Authors don't need to become experts in the tool first. Authors can focus on what they love to do: write great stories and get them out immediately. You control what content blocks are available – authors have the freedom to arrange them into a compelling story.
- Publish before competitors. Consumers can get information from various sources today at incredible speeds. It is critical to get a breaking story out first. The first story that reaches the audience is the one that will be read. Being first in social feeds also means better acceleration and ultimately more traffic coming your way. The Stories app can bypass workflows to let authors publish content in seconds. Get the first draft out as soon as a story breaks. Keep publishing more detail and add depth as the story develops.
- Reusability and flexibility at the same time. Content management systems often ask you to choose between editing content in rigid forms and very flexible pages. Forms give you reusability while page layout gives authors flexibility to control the experience. Magnolia's Stories app is right in the middle of those poles. Authors can input the right amount of metadata and structured content to make the content reusable, while at the same time have enough freedom to craft a rich end-user experience.
Reclaiming workflow tasks
For example, if a publisher assigns a task to himself and then goes on vacation, leaving the task incomplete, another user can claim the task for himself. The absentee publisher is informed of the change in the Pulse.
Changes for developers
- Front-end developers have access to rich Magnolia functionality that was previously only available in Java.
- JS models are performant and fun to work with. Changes are picked up instantly, just like any other file in a light module.
- You can simplify template scripts by moving complicated logic to template models.
Reusing configuration with YAML inherit and include
Your ability to reuse configuration has improved, boosting productivity for front-end development with Magnolia.
You can now reuse configuration easily with YAML
!include directives. Both inherited and included definitions can be modified and overridden. You can
!include from YAML-based files and
!inherit from registered definitions (such as YAML or JCR definitions).
- Easier to create new definitions.
- Reduces duplication of configuration which improves maintenance.
- Makes it clearer how your new definition is related to existing ones.
- Want to create a new dialog that is almost the same as the MTK Text & Image component? Inherit it and specify what you want to change.
- Want to create a new app that is almost the same as the Pages app? Inherit the Pages app.
!inherit directive allows a YAML file to inherit any other registered definition from any source: Blossom, Java code, JCR or YAML. The result is a new definition that you can modify further. In this way, the new YAML
!inherit directive is very similar to the JCR
Reference the inherited definition by its identifier.
Example: Define a new renderer
json . Inherit everything from the
freemarker renderer but specify a different
!include directive has been improved. Now you can override the included values. For example, a YAML file that defines an link field can be included in two different dialogs: one dialog definition modifies the
required property to make the field required and another dialog that keeps the field optional.
Reference the included definition using its resource path. You can include a complete definition at the top of your new definition or a fragment at a sub-level.
Example: Define a new form. Include a tab and actions from other definitions. Modify a property.
- Line 6: Modify the label of the included tab.
- Lines 9 and 10: Modify the label of the
blackOrWhitefield from the include.
- Lines 14 to 16: Add another action to the imported actions.
With Magnolia 5.5.6 the syntax has changed slightly. The old syntax still works. When using the new version, you can modify and override the included part of the definition, see syntax versions.
See: YAML include
Known issue: MAGNOLIA-7126 - Getting issue details... STATUS
Inspecting an object's structure and content
To get a better understanding of any object, you can use the new
function in a template script to output an object's structure and content. By default the function looks down to the 3rd level of an object and produces the output in plain text, optionally in a simple HTML format.
Improved virtual URI mappings
As a frontend developer, you can configure virtual URI mappings in a YAML definition file inside a light module folder.
Example:The API has been improved. Some mapping classes are deprecated now. As replacement you can use 5 new mapping classes. The API is now in its own module
As we made the new mappings safer to use, host-based URI mappings currently require their
toUri property to be also configured (outside of the domain mappings); otherwise, they are ignored. Such fallback may not always be desired. We will amend this to make the fallback target URI optional again. See
Getting issue details...
Use placeholders to describe expected field values
placeholder property to give the user a hint about what they should enter into text and link fields. For example, you can show the expected format for a phone number or give a hint about the importance of entering metadata for SEO purposes. A placeholder text can prevent input errors before they happen.
placeholder property is available in text field and link field definitions. The property allows you to define a text (i18n compliant) to be displayed in a field before a user enters something. The earlier purpose-built PlaceholderTextFieldDefinition class is now deprecated.
Relocation and expansion of LDAP module's configuration
Released almost simultaneously with Magnolia 5.5.6, version 1.9 of the LDAP Connector module is now configured under the appropriate node in
/server/security/userManagers. The configuration also allows a more convenient customization of its properties.
Security and library updates
5.5.6 changelog with all the changes.
Updating to 5.5.x from any pre-5.5 version
- Please be aware that depending on the number of versions in the version workspace, the update to 5.5.x from any version below 5.5 may take from 1 to 2 hours since all of the versions have to migrated to a new structure.
- Since the default JCR persistency layer in our bundles has changed to H2 Database Engine with the 5.5 release, please make sure that you keep the
magnolia.repositories.jackrabbit.configproperty in the
magnolia.propertiesfile set to the database you used before updating. For example, for Derby set the property as follows:
Generally, follow the standard update procedure.
- Please check Important changes for Magnolia 5.2 and 5.3 users.
- Please check How to update from Magnolia 5.2 and earlier if required.
- Please check How to update from Magnolia 4.5 and earlier if required.
Changes for 5.4.x users
The following changes apply only to the users running Magnolia 5.4 (major release) and maintenance releases 5.4.1 to 5.4.3.
CE and EE users
Add the following lines in your
magnolia.properties file. They configure a directory for loading file system resources and the file types Magnolia should observe in the classpath and reload on-change:
If you had EE Pro 5.4.x or previous and are installing EE Pro 5.5.6
Due to component personalization bringing in new features to the page editor, you must replace the widgetset in the
magnolia.properties file. Either replace or add (depending on the update path):
Derby vs. H2
If you used a previous version of Magnolia with an Apache Derby database, make sure you keep your
magnolia.repositories.jackrabbit.config setting in your
Magnolia bundles now ship with the following default setting:This setting may not be compatible with your setup.
Important changes for Magnolia 5.2 and 5.3 users
If you had STK installed
If you continue to work with STK, use the new
magnolia-enterprise-pro-stk-bundle as a basis for your project. It includes Enterprise Pro, STK and the old demo project. You get all STK functionality out of the box. Exclude the demo-project if it's in your way.
In order to enable getting an HTML excerpt in a query result, you should update the configuration files of your Jackrabbit instances. Add the two
<param/> directives within your
Add the log configuration for org.reflections
How to update from Magnolia 5.2 and earlier
To update your project, follow the standard update procedure, then make the following changes:
- Update your content apps with the content app upgrade task. It automatically takes care of the following:
Using the content connector.
Updating configuration of availability rules and default rule classes
Updating selected action definitions with node-type based availability
- If you used the DAM:
- If you have a custom jBPM workflow:
- In the
info.magnolia.module.workflow.jbpm.JbpmWorkflowManager#completeWorkItemmethod, checking for present parameters is obsolete and refers to publication related workitems. The method is no longer used for completing a workitem in the new human task context. It is still valid in the context of completing service tasks, however.
Stop using the
info.magnolia.module.workflow.jbpm.JbpmWorkflowManager#getWorkItemmethod. It was used to complete a work item for human tasks. Furthermore, the wrapper we initialize only holds the
The previously hardcoded
mgnlDataparameter is now configurable in
- In the
- If you have custom widgets or Vaadin add-ons:
- Magnolia's default widgetset was relocated to
- Update your webapps's
- Otherwise Magnolia will automatically fall back to the new widgetset but will issue warnings during upgrade, and whenever a user logs in to Magnolia.
- Magnolia's default widgetset was relocated to
How to update from Magnolia 4.5 and earlier
Posting a comment does not work
Due to the removal of deprecated code, the Commenting module does not work. We will release a new version of it soon: MGNLFORUM-296 - Getting issue details... STATUS .
The Show action in the Configuration app doesn't open the correct location
When selecting properties in a definition that are actually extended from another node in the config workspace, opening the definition in the Configuration app will not work correctly, as the underlying node/property doesn't exist. For example,
points to config:/modules/site-app/apps/site/subApps/browser/actions/addFolder/icon
but all the actions are inherited from
/modules/ui-admincentral/apps/configuration/subApps/browser via extends.
Allocate more JVM memory
Magnolia 5.5.6 ee-bundle may require you to allocate more memory the Java Virtual Machine (JVM). If you see a
java.lang.OutOfMemoryError in the startup log or the system stops responding during installation, increase the Java heap size. The default maximum heap size is 512M. Try a higher amount such as 1024M. We are working on uncovering the root cause for the increased memory need.
See: Java out of memory
- Activation 5.5.5
- Cache 5.5.6
- Community Edition 5.5.6
- Content Editor 1.0.6
- DAM 2.2.6
- Definitions app 1.0.2
- Demo Projects 1.1.5
- Enterprise Edition 5.5.6
- Forum 3.6.2
- LDAP support 1.9
- LDAP support 1.9.1
- Magnolia 5.5.6
- Pages 5.5.6
- Personalization 1.4.6
- Resources 2.5.4
- Templating Essentials 1.1.4
- UI 5.5.6
- Workflow 5.6.5
- XA Activation (exchange-transactional) 2.4
The Magnolia team would also like to thank everyone who reported issues, contributed patches, or simply commented on issues for this release. Your continued interest helps us make Magnolia better. Special thanks go to: Marcel Boer, Marcus Büttner, Andrea Castelli, Chris Jennings, Jens Kolb and Ronald Ten Berge.