I'm not actually working on it, but from what I can tell it should be like that; just a small correction, the ApplicationImpl.createComponent() from Resource sets that attribute, to associate the component with the resource it was created from, which I guess only applies to composite components. regards, Catalin
On Mon, Jun 15, 2009 at 3:05 PM, Werner Punz <[email protected]> wrote: > Ok I will leave it in then, thanks for the quick answer on this. > > Werner > > > > Catalin Kormos schrieb: > >> Hi, >> >> I think checking for Resource.COMPONENT_RESOURCE_KEY in the attributes of >> the component is the right way. Checking in the RI source code, they do it >> the same; of course, this attribute must be set by corresponding facelets >> handler when instantiating the composite component from a given resource, >> but I think this is also a requirement for composite components, to >> associate the component with the actual resource it was created from. >> >> regards, >> Catalin >> >> On Mon, Jun 15, 2009 at 2:02 PM, Werner Punz <[email protected]<mailto: >> [email protected]>> wrote: >> >> Hello >> >> Since I am implementing this part, I have a question especially to >> the guys doing the facelet part. >> >> We have a method in UIComponent - isCompositeComponent >> >> Now it is not very clear to me if the code I found in our class is >> correct. >> >> We already have a private method: _isCompositeComponent which does >> following: >> >> private boolean _isCompositeComponent() { >> return getAttributes().get(Resource.COMPONENT_RESOURCE_KEY) >> != null; >> } >> >> >> >> This looks somewhat strange to me, the component resource key, >> which is : javax.faces.application.Resource.ComponentResource >> >> is this really an indicator for a composite component? >> >> In my opinion it should look like following: >> private boolean _isCompositeComponent() { >> component.getRendererType().equals("javax.faces.Composite"); >> } >> >> but I am not totally sure either, this should work for java based >> components which are marked as composite in their renderers, but i >> am not sure if this triggers the correct behavior for facelets. >> >> In either case for now I have moved the private code to the public >> static method like the spec says! >> >> >> Werner >> >> >> >> >> -- >> ------------ >> Codebeat >> www.codebeat.ro <http://www.codebeat.ro> >> > > -- ------------ Codebeat www.codebeat.ro
