Some proxy instance.

It can't break the spec, cause it's only implemented in t:dataTable's
findComponent method.

regards,

Martin

On 2/12/06, Jacob Hookom <[EMAIL PROTECTED]> wrote:
> But doesn't that break spec?
>
> Are you returning the UIComponent itself or some proxy instance?
>
> Martin Marinschek wrote:
>
> >Yes - but I extended the findComponent concept for data table to allow
> >scoped id's with a row-identifier included, so this is now much the
> >same as a client-id, except if the renderer does a conversion.
> >
> >So what Dave wants ought to work. In the latest nightly build and
> >several before them.
> >
> >regards,
> >
> >Martin
> >
> >On 2/12/06, Jacob Hookom <[EMAIL PROTECTED]> wrote:
> >
> >
> >>findComponent has nothing to do with client ids.  They work off of
> >>different logic.
> >>
> >>Martin Marinschek (JIRA) wrote:
> >>
> >>
> >>
> >>>   [ 
> >>> http://issues.apache.org/jira/browse/MYFACES-1110?page=comments#action_12366049
> >>>  ]
> >>>
> >>>Martin Marinschek commented on MYFACES-1110:
> >>>--------------------------------------------
> >>>
> >>>Hmmm...
> >>>
> >>>yes, you should be able to search from the view-root no problem.
> >>>
> >>>Can you debug a little through find-component?
> >>>
> >>>I have a working test-case in tomahawks test source, plus we use the 
> >>>method successfully in the AJAX part.
> >>>
> >>>regards,
> >>>
> >>>Martin
> >>>
> >>>
> >>>
> >>>
> >>>
> >>>>findComponent return null for a valid clientId
> >>>>----------------------------------------------
> >>>>
> >>>>        Key: MYFACES-1110
> >>>>        URL: http://issues.apache.org/jira/browse/MYFACES-1110
> >>>>    Project: MyFaces
> >>>>       Type: Bug
> >>>> Components: Implementation
> >>>>   Versions: Nightly
> >>>>Environment: JBoss 4.0.3, XP
> >>>>   Reporter: Dave
> >>>>   Assignee: Martin Marinschek
> >>>>   Priority: Critical
> >>>>
> >>>>
> >>>>
> >>>>
> >>>
> >>>
> >>>
> >>>>In a PhaseListener, first get all the clientId(s) with queued messages, 
> >>>>then try to find the components. But ViewRoot.findComponent(clientId) 
> >>>>return null.
> >>>>
> >>>>public void beforePhase(PhaseEvent event) {
> >>>>   FacesContext context = event.getFacesContext();
> >>>>   UIViewRoot root = context.getViewRoot();
> >>>>   Iterator<String> itr = context.getClientIdsWithMessages();
> >>>>   while (itr.hasNext()) {
> >>>>     String clientId = itr.next();
> >>>>     UIComponent component = root.findComponent(clientId);
> >>>>     // ERROR: component is null
> >>>>     ....
> >>>>   }
> >>>>}
> >>>>
> >>>>
> >>>>From debugger, clientId is
> >>>
> >>>
> >>>>emp:empForm:empTable:1:salary:_idJsp144
> >>>>The clientId is returned from context.getClientIdsWithMessages();
> >>>>It must be valid, but root.findComponent() returns NULL.
> >>>>JSF should have the following API
> >>>>FacesContext.getComponentsWithMessages();
> >>>>which is better than getClientIdsWithMessages();
> >>>>
> >>>>
> >>>>
> >>>>
> >>>
> >>>
> >>>
> >>--
> >>Jacob Hookom  -  Minneapolis
> >>----------------------------
> >>JSF-EG, JSF-RI, EL, Facelets
> >>
> >>
> >>
> >>
> >
> >
> >--
> >
> >http://www.irian.at
> >
> >Your JSF powerhouse -
> >JSF Consulting, Development and
> >Courses in English and German
> >
> >Professional Support for Apache MyFaces
> >
> >
> >
>
>
> --
> Jacob Hookom  -  Minneapolis
> ----------------------------
> JSF-EG, JSF-RI, EL, Facelets
>
>


--

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces

Reply via email to