Wednesday, October 9, 2013

This release is a major update for Magnolia 5, compatible with Magnolia 5.1 and later. In version 5 Magnolia has a brand new user interface and with it comes a new API for dialogs. This version of Blossom is an update for this API and also contains a few other improvements and new features.

Blossom 3 uses a new builder style API for dialogs with a fluent programming style. A new set of classes replaces the previous API. These classes include a new TabBuilder and DialogBuilder and provides builders for each of the built-in fields, making it easier to configure properties on fields.

A new feature in this release is meta-annotations for component availability. It allows for creating custom annotations that can then be used on components to categorise them. They can then be used for specifying which components can go into an area with the @AvailableComponentClasses annotation. All components having a specified annotation will be available.

Using Springs freemarker macros for forms is now straight forward. When rendering freemarker views Blossom will expose a RequestContext object which these macros require, it will also expose everything in the model as request attributes. This feature is enabled by default but can be switched off on the FreemarkerTemplateViewRenderer..

The multipart support that bridges Springs multipart handling to the multipart support in Magnolia has been updated for API changes in Spring 3.1.

New is also AbstractAutowiredRenderingModel which allows for autowiring of RenderingModel classes used outside of Blossom. Very handy.

The sample has also been updated and as always, this is the best place to start.

Sorry the sample is not compiling; I thins there's some repository missing.

~/m/blossom-samples> git checkout magnolia-blossom-samples-3.0 1 f991ba4HEAD is now at f991ba4... [maven-release-plugin] prepare release magnolia-blossom-samples-3.0~/m/blossom-samples> mvn install f991ba4[INFO] Scanning for projects...[WARNING] [WARNING] Some problems were encountered while building the effective model for info.magnolia.blossom:magnolia-blossom-sample-webapp:war:3.0[WARNING] 'build.plugins.plugin.version' for org.mortbay.jetty:jetty-maven-plugin is missing. @ line 42, column 15[WARNING] [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.[WARNING] [WARNING] For this reason, future Maven versions might no longer support building such malformed projects.[WARNING] [INFO] ------------------------------------------------------------------------[INFO] Reactor Build Order:[INFO] [INFO] magnolia-blossom-samples (parent pom)[INFO] magnolia-blossom-sample-module[INFO] magnolia-blossom-sample: webapp[INFO] [INFO] ------------------------------------------------------------------------[INFO] Building magnolia-blossom-samples (parent pom) 3.0[INFO] ------------------------------------------------------------------------[WARNING] The POM for info.magnolia:maven-setproperty-plugin:jar:1.1.1 is missing, no dependency information available[INFO] ------------------------------------------------------------------------[INFO] Reactor Summary:[INFO] [INFO] magnolia-blossom-samples (parent pom) ............. FAILURE [0.135s][INFO] magnolia-blossom-sample-module .................... SKIPPED[INFO] magnolia-blossom-sample: webapp ................... SKIPPED[INFO] ------------------------------------------------------------------------[INFO] BUILD FAILURE[INFO] ------------------------------------------------------------------------[INFO] Total time: 0.842s[INFO] Finished at: Tue Nov 05 10:02:06 CET 2013[INFO] Final Memory: 10M/108M[INFO] ------------------------------------------------------------------------[ERROR] Plugin info.magnolia:maven-setproperty-plugin:1.1.1 or one of its dependencies could not be resolved: Failure to find info.magnolia:maven-setproperty-plugin:jar:1.1.1 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1][ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.[ERROR] Re-run Maven using the -X switch to enable full debug logging.[ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles:[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException

The missing repository is for a maven plugin. If you follow the instructions on http://documentation.magnolia-cms.com/display/DOCS/Maven+init it will be added automatically to your settings.xml file. I'll still go ahead and add it to the project.

Links

About Me

I started the Magnolia Blossom project in 2009 after having worked with Magnolia and especially Spring Framework for many years. The project aims to make it easy and straight forward to develop websites with Spring Web MVC while having access to the content management of Magnolia CMS. It's Spring Web MVC with content.