0 Replies Latest reply: May 2, 2012 8:43 AM by Karsten Wutzke RSS

Treatment of IDs containing whitespace in a <rich:tree> caused by TreeNodeImpl.addChild("real root", ...)?

Karsten Wutzke Expert

Hello all,

 

I've had a problem with <f:ajax> and <a4j:ajax> described/discussed here:

 

http://stackoverflow.com/questions/10396545/jsf-hcommandbutton-with-fajax-not-executed-on-viewscoped-bean-but-a4jaj

 

Could someone from the dev team please have a look at this? In the <rich:tree> at hand I add a root node to the tree via org.richfaces.model.TreeNodeImpl's addChild("real root", ...), that is as string key containing spaces, which causes an invalid ID, which again causes JSF <f:ajax> to fail (button not executed), but RichFaces <a4j:ajax> happily executes the button, even though the JSF spec forbids them.

 

Why isn't an IllegalArgumentException thrown when passing "real root" as key? How does RF handle tree keys when they aren't strings? The AJAX RF component claims to be based 100% on the JSF component (as written in Practical RichFaces, 2nd ed.), so why is RF allowing whitespaced IDs and why is it even generating them?

 

Thanks

Karsten