AnsweredAssumed Answered

Navigation override mechanism questions

Question asked by buzman on Mar 8, 2006
Latest reply on Oct 4, 2011 by shmoula
Hi,
  I was wondering if someone would be able to explain the new navigation override mechanism to me. I've tried to deduce how to use it, but my overrides are not taking effect.

Given the a jsf navigation config of this :
<navigation-rule>
      <from-view-id>/jsp/browse/browse.jsp</from-view-id>
      <navigation-case>
         <from-outcome>createSpace</from-outcome>
         <to-view-id>/jsp/dialog/new-space.jsp</to-view-id>
      </navigation-case>
</navigation-rule>
… as I understand it, this means :

When on a specific page (from-view-id), when the specified navigation 'event' occurs (from-outcome), navigate to the target page (to-view-id).

I can't seem to work out how this tallys with the new nav overrides. For instance :
   <config evaluator="node-type" condition="fm:forums">
      <navigation>
         <override from-view-id="/jsp/browse/browse.jsp" to-view-id="/jsp/forums/forums.jsp" />
         <override from-outcome="browse" to-view-id="/jsp/forums/forums.jsp" />
         <override from-outcome="showSpaceDetails" to-view-id="/jsp/forums/forums-details.jsp" />
         <override from-outcome="deleteSpace" to-view-id="/jsp/forums/delete-forums.jsp" />
      </navigation>
   </config>
It's easy enough to see that this is tied to a specific 'object type' (or potentially aspect?), but the area of confusion is how to make the override apply to a specific page (from-view-id in the jsf example).

So, my questions are :
  1. The first override line contains a 'to-view-id' attribute. What does this mean when the from-outcome isn't defined?

  2. The config mechanism doesn't allow you to specify both a from-view-id and a from-outcome attribute on the same override element, so how do you tie an outcome only to a specific page (from-view-id)?

  3. Is there any way to get a debug output of what the system thinks the current overrides are?

  4. Is there any way to define an override that's *not* tied to a specific node/aspect type - for instance, to override the new-rule and create-action navigations having created a new action class?
Many thanks
Ben

Outcomes