Version 2.1 by Thomas Mortagne on 2009/08/10
Warning: For security reasons, the document is displayed in restricted mode as it is not the current version. There may be differences and errors due to this.

Failed to execute the [velocity] macro. Cause: [The execution of the [velocity] script macro is not allowed in [xwiki:ReleaseNotes.ReleaseNotesXWikiEnterprise20M3]. Check the rights of its last author or the parameters if it's rendered from another script.]. Click on this message for details.

Component Manager api improvements

  • Add way to directly provide the component instance when register it
  • Add way to unregister component

New xwiki-properties module

  • Java bean populating support
  • Java type conversion support
  • Java bean validation support

Among other things this mean the following changes for the 2.0 macros:

  • any case is supported for macros parameters names
  • public fields are now supported (not only getters and setters)
  • java macro parameters bean is validated agains JSR 303 (See )
  • macro properties java bean can implements RawProperties to get custom non converted parameters
  • you can add support for any type conversion by implementing Converter component
  • any Enum conversion is supported (no need to register each Enum subclass agains ConvertUtils anymore)
  • support for Color conversion

See Properties module documentation.

Miscellaneous UI improvements

  • Improved document footer section
  • Improved tag display and editing

Important bugs fixed

  • XWIKI-4033 - When saving after section edit entire page is overwritten
  • XWIKI-4043 - Main.AllDocs not showing any documents in a farm

Known issues

Backward Compatibility and Migration Notes

General Notes

If you're running in a multiwiki setup you'll also need to define the property to your xwiki.cfg file or explicitly name all databases to be migrated as in,db2,....

You may also want to import the default wiki XAR in order to benefit from improvements listed above.

Always make sure you compare your xwiki.cfg file with the newest version since some configuration parameters were added. Of note, you should add so that XWiki will attempt to automatically migrate your current database to the new schema. Make sure you backup your Database before doing anything.

API Breakages

The following APIs were modified since XWiki Enterprise 2.0M1:

  • Rendering Module
    • AbstractBlock constructors has been refactored to make easier to create new common macros. Main change is that the macro author does not have to provide the MacroDescriptor anymore.
    • Macro parameters bean are now supposed to use xwiki-properties annotations instead of org.xwiki.rendering.macro.descriptor.annotation.* annotations. Simply change org.xwiki.rendering.macro.descriptor.annotation.Parameter* by* to upgrade you macro parameters bean.
    • Details:\
[ERROR] org.xwiki.rendering.block.AbstractBlock: Method 'public void setParameter(java.lang.String, java.lang.Object)' has been removed
[ERROR] org.xwiki.rendering.macro.AbstractMacro: Parameter 1 of 'public AbstractMacro(org.xwiki.rendering.macro.descriptor.MacroDescriptor)' has changed its type to java.lang.String
[ERROR] org.xwiki.rendering.macro.AbstractMacro: Method 'protected void registerConverter(org.apache.commons.beanutils.Converter, java.lang.Class)' has been removed
[ERROR] org.xwiki.rendering.macro.AbstractMacroSource: Class org.xwiki.rendering.macro.AbstractMacroSource removed
[ERROR] org.xwiki.rendering.macro.MacroManager: Removed java.lang.Comparable from the set of implemented interfaces
[ERROR] org.xwiki.rendering.macro.MacroManager: Method 'public int getPriority()' has been removed
[ERROR] org.xwiki.rendering.macro.MacroSource: Class org.xwiki.rendering.macro.MacroSource removed
[ERROR] org.xwiki.rendering.macro.descriptor.AbstractMacroDescriptor: Parameter 3 of 'public AbstractMacroDescriptor(java.lang.String, org.xwiki.rendering.macro.descriptor.ContentDescriptor, java.lang.Class)' has changed its type to
[ERROR] org.xwiki.rendering.macro.descriptor.AbstractMacroDescriptor: Method 'protected java.lang.annotation.Annotation extractParameterAnnotation(java.lang.reflect.Method, java.lang.reflect.Method, java.lang.Class)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.AbstractMacroDescriptor: Method 'protected void extractParameterDescriptor(java.beans.PropertyDescriptor, java.lang.Object)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultMacroDescriptor: Parameter 3 of 'public DefaultMacroDescriptor(java.lang.String, org.xwiki.rendering.macro.descriptor.ContentDescriptor, java.lang.Class)' has changed its type to
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultMacroDescriptor: Method 'public DefaultMacroDescriptor(java.lang.String, java.lang.Class)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultParameterDescriptor: In method 'public DefaultParameterDescriptor()' the number of arguments has changed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultParameterDescriptor: Method 'public void setDefaultValue(java.lang.Object)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultParameterDescriptor: Method 'public void setDescription(java.lang.String)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultParameterDescriptor: Method 'public void setMandatory(boolean)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultParameterDescriptor: Method 'public void setName(java.lang.String)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.DefaultParameterDescriptor: Method 'public void setType(java.lang.Class)' has been removed
[ERROR] org.xwiki.rendering.macro.descriptor.annotation.ParameterDescription: Class org.xwiki.rendering.macro.descriptor.annotation.ParameterDescription removed
[ERROR] org.xwiki.rendering.macro.descriptor.annotation.ParameterHidden: Class org.xwiki.rendering.macro.descriptor.annotation.ParameterHidden removed
[ERROR] org.xwiki.rendering.macro.descriptor.annotation.ParameterMandatory: Class org.xwiki.rendering.macro.descriptor.annotation.ParameterMandatory removed
[ERROR] org.xwiki.rendering.renderer.PrintRendererFactory: Method 'public java.util.List getAvailableSyntaxes()' has been added to an interface

Get Connected