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
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();
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira