Upgrade to Navapp

Custom Perspectives

To display custom perspectives in the Navapp 'Extensions' menu, update each perspective as described below:

  • Add the frontend:navigationitem mixin and set the required frontend:appPath property. The appPath value determines the last segment of the URL when the menu item is active. For example, if appPath is set to myapp and the CMS is deployed at https://cms.example.com, the custom perspective will be available at https://cms.example.com/myapp.
  • Add translation key-value pairs for each language required by your perspective.
  • Assign the appropriate hipposys:userrole. You can use a userrole provided by Bloomreach Content (such as xm.cms.user) or a custom userrole from your project. Note: The xm.cms.user role is assigned to all CMS users by default. If the perspective should be available to all users, you do not need to configure this property.

The following example demonstrates these configuration changes:

definitions: config: /hippo:configuration/hippo:frontend/cms/cms-static/example1Perspective: jcr:primaryType: frontend:plugin jcr:mixinTypes: ['frontend:navigationitem'] plugin.class: com.example.Example1Perspective wicket.id: service.tab frontend:appPath: example-1 hipposys:userrole: xm.cms.user
definitions: config: /hippo:configuration/hippo:translations/hippo:navigation: jcr:primaryType: hipposys:resourcebundles /navigationitem: jcr:primaryType: hipposys:resourcebundles /displayName: jcr:primaryType: hipposys:resourcebundles /en: jcr:primaryType: hipposys:resourcebundle my-custom: Example 1 /nl: jcr:primaryType: hipposys:resourcebundle my-custom: Voorbeeld 1

If you use a PluginClusterLoader to load the perspective, also add the userrole property to the loader configuration. Starting with version 14.0, Bloomreach Content only starts plugins for which the user has the required role, if configured. For more information, see Userroles.

CDN

Bloomreach Content can serve the Navapp from a CDN. By default, the CMS uses the Navapp packaged with the CMS distribution.

Communication Between Custom Perspectives and Navapp

To enable communication between your custom perspective and the Navapp (beyond displaying the menu item), add the following Wicket behavior to your custom perspective and implement the child API:

org.hippoecm.frontend.plugins.standards.perspective.CmsSubAppIFrameCommunication

Proxy Configuration

iframe

Navapp loads Bloomreach Content in an iframe. The iframe's src URL will be similar to:

https://cms.company.com/?iframe

initialPath

When a user reloads the Navapp (for example, by pressing F5) while logged in, the server appends an initialPath query parameter to the URL and responds with a 302 redirect. The Navapp uses this parameter to display the correct menu item and URL.

Ensure that any reverse proxies in your environment allow these query parameters to pass through.

Share Feedback
Page: /about/upgrade-guides/archived-upgrades-pre-v15/v13-v14/upgrade-to-navapp
Section: About
Category *
4. Upgrade to Navapp | Bloomreach Content Documentation