3 Replies Latest reply on Sep 20, 2013 11:25 AM by Jaap Spiering

    Webcenter Portal with friendly Urls and bookmarkable

      Hi all,

      I have few requirements in my custom webcenter portal like (preety urls, bookmarkable, SES friendly urls etc).. Would like to analyze each one here..(all of them are interrelated) and hear about the best way of doing that from people who has already done it...

      1) Need to get all my pages having preety url something like http://mywebstie.com/hr, http://mywebsite.com/benefits

      To address this, one option is having <af:goLink> with PreetyUrl in destination instead of <af:commandLink> in page template when iterating navigation model, as the former will do a client side redirect so that you will see URL change and the latter will do server side redirect with PPR (so no URL change).

      //Iterating navigation model to display the menu
      <af:goLink id="pt_gl1" text="#{node.title}"
      inlineStyle="font-size:small;#{node.selected ? 'font-weight:bold;' : ''}">
      <af:showPopupBehavior popupId="menuPopup" align="afterStart"

      But this is not performant, as you will see a page load on each request.

      If we go with <af:commandLink>, it will do the PPR navigation which is very performant but no URL change.

      <af:commandLink id="pt_cl1" text="#{node.title}"
      inlineStyle="font-size:small;#{node.selected ? 'font-weight:bold;' : ''}"
      disabled="#{not node.navigable}"
      clientComponent="#{node.attributes['Target'] == '_popup' ? true : false}">
      <!-- pass node to processAction for setting current selection and navigation -->
      <f:attribute name="node" value="#{node}"/>
      <af:showPopupBehavior popupId="menuPopup"

      2) How can i get the Webcenter Portal Ulrs bookmarkable?
      Having CustomViewHandler to give PreetyUrl in webcenter portal by overriding getActionURL will do good, but with commandLink PPR option it will not be useful as there will be no URL change.

      GoLink will give a preety url, but with above limitations. But the addition problem is if you try to bookmark that (http://mywebsite.com/faces/benefits...) ,
      it will also comes with the additional ADF state parameters (like ctrl state, jessionid etc). When you logout and open it in different page, you will get 404 error. Not sure how to make this working?

      3) remove all extra parameters sticking in session (_afrLoop=525992870870264&_afrWindowMode=0&_afrWindowId=16gh5jc7yh_10#)

      I belive, its not possible to remove all those parameters, as they are responsible for detecting window state, sticking session(jessionid), state tracking etc ! But any one who has done that successfully can share the ideas....

      4) Need to have SES friendly approach so that both portal and SES work on the friendly Urls.
      Again not sure how it will be done..thinking mostly in the lines of CustomViewhandler...but not sure!