incubator-adffaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Qiang Fan" <johnqiang...@gmail.com>
Subject Re: GoLinkRenderer calls writeURIAttribute to render name and id, why?
Date Wed, 29 Nov 2006 00:48:34 GMT
Adam:

I asked the question because I am working on a patch for encoding URLs in
trinidad. I need to know whether to encode the URL as Action URL or Resource
URL.

For the following scenarios I guess they should all be encoded as Action
URL. But I am not sure. Just want to confirm with you.

In HeaderRenderer (in this case only name is rendered and I did not see id
for it):

    renderURIAttribute(context, NAME_ATTRIBUTE, label);

And in LinkRenderer:

  protected void renderID(
    UIXRenderingContext context,
    UINode           node
    ) throws IOException
  {
    Object id = getID(context, node);

    if (id != null)
    {
      if (supportsID(context))
      {
        // For links, "name" and thus "id" is a URI attribute.
        renderURIID(context, id);
      }

      if (supportsNameIdentification(context) && makeNameAndIDSame(context))
      {
        renderURIAttribute(context, "name", id);
      }
    }
  }
Are they all Action URLs?

Thanks.

John


On 11/28/06, Adam Winer <awiner@gmail.com> wrote:
>
> The value of the attribute on "name" on GoLink will end up mapping
> up to "href" on some other link.  So it really is a URI.
> E.g., you need to use % encoding, not & encoding.
> And "id" must equal "name".
>
> -- Adam
>
>
>
> On 11/28/06, Qiang Fan <johnqiangfan@gmail.com> wrote:
> > In GoLinkRenderer class, there is the following method:
> >
> >   @Override
> >   protected void renderId(
> >     FacesContext context,
> >     UIComponent  component) throws IOException
> >   {
> >     if (shouldRenderId(context, component))
> >     {
> >       String clientId = getClientId(context, component);
> >       // For links, these are actually URI attributes
> >       context.getResponseWriter().writeURIAttribute("id", clientId,
> "id");
> >       context.getResponseWriter().writeURIAttribute("name", clientId,
> "id");
> >     }
> >   }
> >
> > Why are id and name rendered as URI? Are the id and name used as URI in
> > javascript logic? I saw some similar code in several other classes too.
> >
> > Thanks.
> >
> > John Fan
> >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message