Skip to end of metadata
Go to start of metadata

Nuxeo Themes

  • Nuxeo Themes is implemented in WebEngine
  • WebEngine is a lightweight framework, and comes empty: there's nothing in it. To switch from the current framework (JSF SEAM) to WebEngine means to give up all the functionality and reimplement in WebEngine
  • There is a theme.jSF component that implements themes in JSF SEAM.
  • SEAM and WebEngine can be mixed and used together (but not on the same page). In fact they are mixed in the default install: Nuxeo DM is written in SEAM, while the Theme Editor is written in WebEngine.
    • proof: theme.editor, View META-INF/MANIFEST.MF
  • More tech details in Nuxeo Themes
  • It seems templates define only layout of the whole application - and more specifically, the Document Management section. There seems not to be nested templates.

Theme Editor

  • The theme editor is integrated within Nuxeo 5.5 and it works with the JSF/Seam UI.
  • Unfortunately, it seems rather unstable and I could not create a new theme with it.
    TODO: report to the NUXEO Jira, and check if it's already reported and track it
  • The editor is a graphical tool for editing the theme xml file. We can edit the config XML manually to achieve a desired layout

Customizing a theme

These are the steps that I have found working for modifying the layout.

  • I downloaded the theme-galaxy.xml from the Theme Editor. This is the default theme.
  • I renamed it to theme-mytheme.xml and put it in the the resources/themes in the contribution project. There is the OSGI-INF/theme-contrib.xml as well where we specify:

    First, I changed 


as well as all references to "galaxy" in theme-contrib.xml.

As a result after deployment:

  • default theme was indeed changed to my_theme
  • layout was broken as galaxy.css was not included.   How do we point to the proper css?

So I returned "galaxy" as a name and it overrode the default galaxy theme. The css was included and layout was fine.

Then I edited the theme-mytheme.xml adding the following (the second footer):

Then in the same file:

This results in:

"section frame" is output as:

"cell frame" is output as:

inside the section frame table.

See jsf--views

As for the "tabs" - we add in theme-contrib.xml:

This effectively outputs the logo after the footer.


In theme-mytheme.xml:

 What are the "perspectives"?

Types seem to be:

  • "generic fragment": predefined nuxeo fragments like "nuxeo5 clip board" or "nuxeo5 breadcrumbs".  What are all possible fragments? (See theme.fragments and default--views)
  • "region fragment": What is this? For the corresponding fragment we have <view>facelet region</view>. What does it mean? Where does it say what content to include?


Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.