With looking forward to JSF2 and the composite component design, there are some instances where we may want to control how the "::" gets resolved at the component level. This would be useful for relocated facets so that the user's original "::" would be correctly interpreted from the original page location.
What I would like to do is to move the code from ComponentUtils.findRelativeComponent to UIXComponent as a static public method "public static String findComponent(UIComponent component, String id)". Then UIXComponent would also provide built in support for "::" in the findComponent instance method. The reason for the static method is so the UIXComponent.findComponent could be used to achieve the relative (::) find strings to use with non-UIXComponent components. The implementation would be to have UIXComponent handle the resolution of the colons in the static method for UIComponent instances, and delegate the code to the instance method for UIXComponent instances. Basically, the same design pattern as the code I added to UIXComponent for the addPartialTarget method. ComponentUtils.findRelativeComponent would be then deprecated and simply call UIXComponent.findComponent (static). Are there any objections to this change? Thank you, Andrew
