4 Replies Latest reply on Jun 15, 2007 12:08 PM by nollie

    What is the format of renderURLs in 2.4?

    nollie

      Hello

      Can someone point me to the documentation that describes the URL created by renderURL tags in 2.4? The format has changed between 2.2 and 2.4 and I need the format to write a load balancing rule.

      Thanks!

        • 1. Re: What is the format of renderURLs in 2.4?

          Look at the code of org.jboss.portal.core.model.portal.PortalObjectURLFactory

          • 2. Re: What is the format of renderURLs in 2.4?
            nollie

            Thanks for the starting point.

            I was able to figure out all of what I needed by examining org.jboss.portal.portlet.impl.PortletRequestDecoder. I need to document my work here and then I will post some hints for anyone who might search this thread.


            Nollie

            • 3. Re: What is the format of renderURLs in 2.4?
              nollie

              (Everything that follows can be verified in org.jboss.portal.portlet.impl.PortletRequestDecoder. I was reading code from the head of development, but everything I learned worked against my 2.4.1 installation)

              Here are some example parameters I've found within my own application.

              action=6&mode=view
              action=a&windowstate=normal

              6, a? What does action mean?

              Action isn't just any old parameter, its value is actually a hexidecimal number built from masks found in the PortletRequestDecoder. The first bit, if on, indicates an actionURL. The second bit, if on, indicates a renderURL. The third bit, if on, indicates the URL has a mode parameter. The fourth bit, if on, indicates the URL has a windowstate parameter. Finally the fifth bit is used for the opaque mask, which we haven't figure out yet. So, what does that give us?

              Let's take look at the action=6 of the first parameter string. 6 in hex equals 110 in binary. According to the bit assignments above that gives us:

               1 1 0
              |_|_|_|_|_|
               o w m r a
               p i o e c
               a n d n t
               q d e d i
               u o e o
               e w r n
              


              Therefore this URL is a renderURL with a mode parameter. Looking above the parameter string has a mode parameter equal to view.

              Now let's look at the action=a of second parameter string. A in hex equals 1010

               1 0 1 0
              |_|_|_|_|_|
               o w m r a
               p i o e c
               a n d n t
               q d e d i
               u o e o
               e w r n
              


              Therefore this URL is also a renderURL, but this time with a windowstate parameter. Looking above the example indeed has a windowstate parameter, but does not have a mode parameter.

              What would the action need to be if we wanted to specify both mode and windowstate parameters?

               1 1 1 0
              |_|_|_|_|_|
               o w m r a
               p i o e c
               a n d n t
               q d e d i
               u o e o
               e w r n
              


              Binary 1110 is e in hex, so the URL would end something like this: action=e&mode=help&windowstate=normal.



              • 4. Re: What is the format of renderURLs in 2.4?
                nollie

                Julien,

                Can you please explain what the opaque flag's function is? I see that it is tied to the NAVIGATIONAL_STATE_PARAMETER but I don't understand what it does.

                thanks

                nollie