Troubleshooting Conditional Navigation

To ensure that you have configured conditional navigation correctly on your system, check the following:

  • Verify whether content reference attributes for conditional navigation are correctly defined on the Content Ref Administration page.

  • Ensure that the request URL has been constructed using the psp (portal) servlet.

    Important! Post-processing is performed on URLs that use the psp (portal) servlet only. No post-processing is performed on URLs that use the psc (content) servlet. Therefore, avoid using URLs that use the psc servlet since they will be accessed as-is and will fail to reflect any conditional navigation that has been configured.

  • Ensure that the request URL has been constructed with any and all of the additional parameters defined for the content reference on the Content Ref Administration page. If any additional parameters are missing or if there are extra additional parameters, the system will fail to identify the actual content reference and conditional navigation will fail.

  • Verify whether authentication permissions have been configured for alternate content references. If permissions are not configured, conditional navigation will not resolve to the expected content reference and will evaluate the next condition.

    These logs are available in application server logs.

  • Verify cyclic references.

    You can configure alternate content references in such a way that it forms a loop. In these cases, conditional navigation identifies cyclic references, breaks the loop, and returns the original content reference.

  • Verify whether the OverrideCNavDisplayMode() PeopleCode API is used.

  • Verify whether the classic or fluid property for the content reference is selected.

    You may want to check this property because it is possible that the component is marked as fluid, but the content reference is not marked as fluid.

  • Because the classic drop-down menu might be cached on the web server depending on your web profile configuration, you may need to clear the web server’s cache to test conditional navigation.

    Note: The Navigator menu displayed in the NavBar is never cached on the web server.

  • Use the application server logging to trace conditional navigation. Set LogFence = 4 to trace conditional navigation.

    Logs specific to conditional navigation are prefixed with COND_NAV.

    Sample conditional navigation log trace:

    Image: Example of conditional navigation trace log

    This example illustrates a sample conditional navigation trace log in application server logs.

    Sample of conditional navigation trace log