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

Reply via email to