APICe: Servizi e Progetti » xWikiApice » Upgrade Issues » Upgrade from 1.7.2 to 1.8.4

Upgrade from 1.7.2 to 1.8.4

The xWiki Upgrade Process

Upgrade Documentation and Resources

Release Notes for XWiki Enterprise 1.8.4

The focus on 1.8 branch was on making the new rendering architecture and the new GWT based WYSIWYG able to fully replace the "old" rendering and TinyMCE based WYSIWYG.

Warning: This version introduce conditional loading of JavaScript and StyleSheet in order for pages to load faster, sending to the browser only the files it needs to display the requested pages. This might break existing applications developed on top of XWiki that relied on such JavaScript and CSS files being present all the time. See Applications migration section for more details

Changes since XWiki Enterprise 1.7

1. First usable versions of new Rendering and new WYSIWYG editor

2. Usability Improvements

  • New Wiki Dashboard on the home page:
    • Spaces: all the spaces within your wiki (technical spaces are hidden):
      • Links to the list of pages within each spaces.
      • Links to the administration of each space.
      • Allows to create new spaces.
    • Tags: all the tags in the wiki under the form of a tag cloud.
    • Recent changes: all the recent modifications in the wiki, grouped by author and by date.
  • New way of displaying tags, with 2 new features:
    • Tag rename.
    • Tag delete.
  • Improved information section in document footer, including document children

3. Performance Improvements

  • Page loading time reduced by 30%. Statistics on Sandbox.WebHome, without client-side file caching (most of the downloaded files are cached on the client after the first request):
    -XE 1.8M1XE 1.8M2
    Requests number3725
    Total size332Ko200Ko
    Download @ T1 (seconds)9.166.06

4. Office Importer

  • New Office Importer: makes use of a running OpenOffice server to convert Office documents (MS Office or OO) into HTML before they are transformed into XWiki 2.0 syntax

5. REST API

  • New REST API. Currently implemented:
    • Access to wikis, spaces and pages
    • Access to page history, translations and page children
    • Access to tags, comments, objects and classes in general
    • Access to attachments

6. New Blog Application

  • New Blog application
    • Lightweight publishing workflow
    • Category and sub-category support
    • Ability to change published date
    • Panels to display blog categories and unpublished posts

7. Others

Common Migration notes

  • In order to benefit from improvements listed above, import the default wiki XAR
  • Add xwiki.store.migration=1 so that XWiki will attempt to automatically migrate your current database to the new schema.

Applications migration

XE 1.8M2 has introduced conditional loading of JavaScript and StyleSheet files in order for pages to load faster, sending to the browser only the files it needs to display the requested pages. This might break existing applications developed on top of XWiki that relied on such JavaScript and CSS files being present all the time. Concerned files and libraries are the following:

  • scriptaculous files
  • accordions files
  • chart wizard files
  • usersandgroups.js and usersandgroups.css
  • livetable.js and livetable.css
  • lightbox.js
  • tablefilterNsort.js and table.css
  • fullscreenEdit.js and fullscreenEdit.css
Applications that relies on one or several of these libraries, need to explicitly make them request the desired files using the Skin Extension plugin. For example, if your application needs the live-table feature (the dynamic AJAX grid), add the following lines to the code page that requires it:

$xwiki.jsfx.use('js/xwiki/table/livetable.js') ## Inject livetable.js <script> tag in the header
$xwiki.ssfx.use('js/xwiki/table/livetable.css') ## Inject livetable.css <link> tag in the header

All the changes in the JIRA site:

http://jira.xwiki.org/jira/secure/ReleaseNote.jspa?projectId=10010

Set the test environment up

  • retrieve latest virtual machine tar file from file server,
  • create new Virtual Machine to a virtualization host,
  • uncompress and import in the Datastore
  • clone the VM,
  • start the VM Virtual Machine
  • take snapshot
  • rotate /usr/local/tomcat/logs (7GB per year!!)
  • The APR based Apache Tomcat Native library for optimal performance i not found on the java.library.path: TO DO
  • update-upgrade linux OS distribution

Skin analysis

  1. Many differences to previous skin (some file moved in templates directory)
  2. modified register.vm: redirection to login
  3. Modified Skin (172 vs 184)
    1. style.css differ
    2. footer.vm (Identical)
    3. view.vm (Identical)
    4. viewheader.vm (Identical)
    5. logo (Identical)
    6. menuview.vm differ
    7. __space.vm (Identical)
    8. contentview.vm (removed)
    9. classes.css (removed)
    10. javascript (removed)
    11. stylesheets differ
    12. login.vm (Identical)
  4. removed other than albatross skin directory from webapps/skins
  5. modified classes section removed 132 migration (import wiki.css and xwikicss in Style section)
  6. modified javascript section removed in 122 migration (keep default)
  7. modified content view.vm section removed during 162 migration
  8. updated Menuview section with 172 changes
  9. updated Space section with 172 changes
  10. not updated Login section (Forgot Password section not included)

Current test release

To test the newly upgraded release (v1.8.4) go to

Test LIST

Logged out

  1. check Register link
  2. http://apice.unibo.it/xwiki/bin/view/People/
    1. compare style layout
    2. check People spaces
  3. Publications
    1. check http://apice.unibo.it/xwiki/bin/view/Publications/PapersPerYear
    2. check of http://apice.unibo.it/xwiki/bin/view/Publications/PapersPerStatus
    3. check http://apice.unibo.it/xwiki/bin/view/Publications/All
    4. check http://apice.unibo.it/xwiki/bin/view/Publications/Search
  4. Talks
    • All talks ordered by year or by category
  5. Courses
    • check All, CoursesPerYear
  6. Theses
    • check Available thesis, Ongoing thesis, Completed thesis, Tags, Theses by People
    • try modify status Theses/TheseName?editor=object
  7. Projects
    • check Show All, Search

Logged in

  1. Test DSA Unibo Login
  2. Publications
    1. check http://apice.unibo.it/xwiki/bin/view/Publications/Insert
      • try Get BibTeX from data
      • try Get data from BibTeX
  3. Talks
    • edit inline form
    • insert Talk
  4. Courses
    • edit inline form
  5. Theses
    • check Available thesis, Ongoing thesis, Completed thesis, Tags, Theses by People
    • try modify status Theses/TheseName?editor=object