XWiki Enterprise 2.1

Last modified by Thomas Mortagne on 2023/10/13

XWiki Enterprise 2.1 is a release focusing on stabilization and building on the new features introduced in XWiki Enterprise 2.0 (See the initial Roadmap).

New and Noteworthy (since XWiki Enterprise 2.0.x)

1 User Interface

  • Complete re-design of the actions menus
  • Split the top menu into 2: one for wiki and space level actions and one for page level actions


  • Reorganized the wiki and space level actions: Some Watch actions, the Wiki and Space administration actions have been moved there.

    menu2.png menu3.png

  • The user action menu now allows to manager the user's watchlist.


  • Reorganized the page level actions (there's now a "More Actions" menu) and the action to watch the current page is moved on the right.

    menu5.png menu6.png menu7.png

  • Added back the ability to view the source of a page
  • Note that the new top level menu (Wiki and Space actions) is a good entry point in the future for providing navigation between wikis in a wiki farm.

For a more detailed description on how the new action menus work please consult the dedicated page.

2 Overhauled Blog Application

  • The Blog application is now using the xwiki/2.0 syntax and the new WYSIWYG editor! Yeah, at last emoticon_smile
  • Several bug fixes and improvements have been brought to the Blog application.

3 Usability

  • When renaming a page, also update the "parent" field of subpages (Patch from Caleb James De Lisle)
  • Updated translations: de (including WYSIWYG), es, fr (including WYSIWYG), gl, lv, nl, pl, ro, sv, zh
  • Lots of improvements and bugfixes in order to conform to the Web Content Accessibility Guidelines (WCAG).
  • Macro parameter pretty names are now displayed in the WYSIWYG

4 Others

  • WYSIWYG editor performance improvement (Minimize and aggregate WYSIWYG editor stylesheets at build time to reduce the number of HTTP requests)
  • Allow XWiki.XWikiAllGroup to be an implicit group, containing all the users without explicitly listing them as objects
  • New renderer for mathematical formulae based on the Google Chart APIs (see the Formula Macro Documentation).
  • Added PHP support through the new PHP Macro (note that this Macro is not bundled by default, you'll need to install it).
  • Ability to register a component for the current user or for the current wiki instead of globally. Note that this will be used in the near future to allow registering Wiki Macros in multiwiki mode without the macros being visible in other wikis.
  • Upgraded to JbossCache 3.2.1GA version
  • Upgraded to Groovy 1.7 Beta 2
  • Several Lucene Search plugin bug fixes

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 xwiki.store.migration.databases=all to your xwiki.cfg file or explicitly name all databases to be migrated as in <tt>xwiki.store.migration.databases=db1,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 xwiki.store.migration=1 so that XWiki will attempt to automatically migrate your current database to the new schema. Make sure you backup your Database before doing anything.

Migration Notes

  • The CSS for the Search Panel has been modified to apply to the CLASS attributes globalsearch and globalsearchinput (See XSCOLIBRI-85 for more details). As a result you'll need to reimport the Panels.Search panel (from the XE XAR for example) in your wiki or the search panel will not be displayed correctly.

API Breakages

The following APIs were modified since XWiki Enterprise 2.0.x:

Rendering api

  • properties (rendering macros api and xwiki-properties module) "name" field has been changed for "id" and "name" now mean display/pretty name
[ERROR] org.xwiki.rendering.block.HeaderBlock: Method 'public void generateId()' has been removed
[ERROR] org.xwiki.rendering.block.HeaderBlock: Method 'public java.lang.String getPlainTextTitle()' has been removed
[ERROR] org.xwiki.rendering.listener.chaining.LookaheadChainingListener: Return type of method 'public org.xwiki.rendering.listener.chaining.LookaheadChainingListener$Event getNextEvent()' has been changed to org.xwiki.rendering.listener.QueueListener$Event
[ERROR] org.xwiki.rendering.listener.chaining.LookaheadChainingListener: Return type of method 'public org.xwiki.rendering.listener.chaining.LookaheadChainingListener$Event getNextEvent(int)' has been changed to org.xwiki.rendering.listener.QueueListener$Event
[ERROR] org.xwiki.rendering.listener.chaining.LookaheadChainingListener$Event: Class org.xwiki.rendering.listener.chaining.LookaheadChainingListener$Event removed
[ERROR] org.xwiki.rendering.macro.descriptor.ParameterDescriptor: Method 'public java.lang.String getId()' has been added to an interface

Get Connected