Hi Tobias et al, Nice! I just upgraded and it works like a charm.
I like the new Blossom Template support a lot. For one thing, it seems very useful to create administrative pages. (Like we might use it to do some file upload and processing, by just adding a new page backed by a Blossom-generated Template in the authoring instance.) All Java, zero configuration in Magnolia. And obviously, it will be quite useful to prepare beans for use in "normal" templates. Thanks a lot! Arjan. On May 12, 2010, at 8:31 PM, Tobias Mattsson wrote: > Until the documentation is ready have a look at these configuration files, > they'll help you get started. > > // The Blossom Team > > On Wed, May 12, 2010 at 8:26 PM, Tobias Mattsson <[email protected]> > wrote: > We are pleased to announce the availability of Blossom 1.0 > > Compared to previous versions Blossom now goes all-in to give you the full > flexibility that Spring Framework can give you. Through a small set of > annotations you can expose Spring Web MVC controllers as templates and > paragraphs. Combined with the ability to create dialogs in code there's no > more need to spend time adding configuration in the repository. We think > we've reached our goal of zero configuration. Using code to create dialogs > also adds a few novel features, such as adding options to a dialog at > runtime, for instance by calling a backend webservice to discover the valid > options, and to write custom dialog validation for user input. > > Another important new feature in 1.0 is that view rendering is performed by > the magnolia rendering pipeline. This is important because it will give you > all the nice to haves that Magnolia gives you, for instance in freemarker > templates. > > Blossom is hosted on SourceForge, go there to download it > https://sourceforge.net/projects/magnoliablossom/ > > The documentation can be found in the Magnolia WIKI, go there for usage > instructions > http://wiki.magnolia-cms.com/display/WIKI/Magnolia+Blossom > > In the coming days we'll update the WIKI page for the new version. > > See below for instructions on updating from 0.5 > > If you have any suggestions or if you've found a bug you're welcome to file a > feature/support/bug request at SourceForge. > > Have fun, hope you like it! > > > Usage example > > This is a brief example of how it's used, these classes are automatically > exposed to Magnolia > > @Controller > @Paragraph("Text") > public class TextParagraph { > > @TabFactory("Content") > public void addPropertiesTab(TabBuilder tab) { > tab.addFckEditor("text", "Text", "").setRequired(true); > } > > @TabFactory("Margins") > public void addMarginTab(TabBuilder tab) {} > > @RequestMapping("/text") > public String handleRequest() { > return "text.jsp"; > } > } > > @Controller > @Template("Main") > public class MainTemplate { > > @DialogFactory("frontpage-properties") > public void addDialog(DialogBuilder dialog) { > DialogTabBuilder tab = dialog.addTab("Properties"); > tab.addEdit("headline", "Headline", "The text to use as a headline"); > } > > @RequestMapping("/main") > public String handleRequest() { > return "mainTemplate.ftl"; > } > } > > @DialogFactory("main-properties") > public class MainDialogFactory { > > @TabFactory("Properties") > public void addPropertiesTab(TabBuilder tab) {} > } > > > Upgrading from 0.5 > > As of version 1.0 Blossom gives you a much bigger feature set and some of the > functionality in the previous version has matured. Unfortunately this means > that some changes have to be made when upgrading. But don't worry, your > content don't have to be touched. > > Added features: > > * Support for exposing controllers as Templates > * Support for creating all types of dialogs with code > * Localization support for paragraphs, dialogs and templates > * Rendering of views is performed using the magnolia render chain, supports > both JSP and freemarker > * Ordering of dialog tabs is customizable with @TabOrder > * The locale used by Magnolia can be made visible to Spring using > MagnoliaLocaleResolver > * Magnolia's localization mechanism can be bridged into Spring using > MagnoliaMessageSource > * JSP tag pecid-input is now also available as pecidInput > > Behind the scenes: > > * Blossom now expose controllers are normal paragraphs instead of using a > placeholder paragraph > that delegates rendering to the controller. This is a much cleaner design > and opens for migration > of existing content and paragraphs into using blossom. > * Customization of the paragraph select dialog is no longer necessary. > > API Changes: > > * Paragraphs are no longer named after the handlerPath they're mapped to. > I.e, a controller mapped > to /text that was previously referred to in templates as '/text' is now > simply 'text'. This had to > be done in order to support migration of existing configured paragraphs > into blossom. Using / in a > paragraph name was never a good idea in the first place. You don't have to > specify a name on your > paragraph, it will automatically use the handlerPath stripped from any > slashes as it's name. > * @ParagraphTitle is renamed to @Pargraph and moves to > se.issi.magnolia.module.blossom.annotation > * @ParagraphDescription moves to se.issi.magnolia.module.blossom.annotation > * DialogTabBuilder is renamed to TabBuilder > * DialogTabBuilder.addText changes to TabBuilder.addEdit > * Methods in DialogTabBuilder no longer throws RepositoryException > * Methods in DialogTabBuilder now return the control they create > * @DialogTabFactory is renamed to @TabFactory and moves to > se.issi.magnolia.module.blossom.annotation > * Ordering of tabs in dialogs are now set using the @TabOrder annotation > * <blossom:handler-mapping /> is deprecated and removed > * <blossom:paragraph-registry /> is renamed to <blossom:configuration /> > * Extension hooks in DefaultBlossomParagraphRegistry has new arguments > * ValidatingParagraph is removed and replaced with @DialogValidator > * Interface DialogCreator has changed and DefaultDialogCreator changes > accordingly. > > // The Blossom Team > > <blossom-servlet.xml><applicationContext.xml> ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <[email protected]> ----------------------------------------------------------------
