You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org> on 2011/08/19 19:32:27 UTC

[jira] [Created] (MYFACES-3287) h:outputStylesheet and h:outputScript with inner markup and references to #{cc} cannot found the parent component.

h:outputStylesheet and h:outputScript with inner markup and references to #{cc} cannot found the parent component.
------------------------------------------------------------------------------------------------------------------

                 Key: MYFACES-3287
                 URL: https://issues.apache.org/jira/browse/MYFACES-3287
             Project: MyFaces Core
          Issue Type: Bug
          Components: JSR-314
            Reporter: Leonardo Uribe
            Assignee: Leonardo Uribe


Look this example:

<composite:interface>
    <composite:attribute name="style"/>
</composite:interface>
<composite:implementation>
<h:outputStylesheet rendered="#{!empty cc.attrs.style}"><![CDATA[
.myCustomStyle { #{cc.attrs.style} }
]]></h:outputStylesheet>
</composite:implementation>

h:outputStylesheet definitions are always relocated to <head>, so this fragment of code just does not work, but it is valid. 

After doing a lot of tests I realize that we can create a "find component expression" and save it on h:outputStylesheet as an attribute, and use it later to locate the right instance in the component tree.

If the component is inside a datatable, it will get the component state without row, which has the effect to makes the related properties not changeable inside a datatable. It has sense after all because this use case of h:outputStylesheet is to add an style declaration per component added to a page, and not to render inline row (for that use <style> instead, right?).



--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (MYFACES-3287) h:outputStylesheet and h:outputScript with inner markup and references to #{cc} cannot found the parent component.

Posted by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org>.
     [ https://issues.apache.org/jira/browse/MYFACES-3287?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Leonardo Uribe resolved MYFACES-3287.
-------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.1.2
                   2.0.8

> h:outputStylesheet and h:outputScript with inner markup and references to #{cc} cannot found the parent component.
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: MYFACES-3287
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3287
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: JSR-314
>            Reporter: Leonardo Uribe
>            Assignee: Leonardo Uribe
>             Fix For: 2.0.8, 2.1.2
>
>
> Look this example:
> <composite:interface>
>     <composite:attribute name="style"/>
> </composite:interface>
> <composite:implementation>
> <h:outputStylesheet rendered="#{!empty cc.attrs.style}"><![CDATA[
> .myCustomStyle { #{cc.attrs.style} }
> ]]></h:outputStylesheet>
> </composite:implementation>
> h:outputStylesheet definitions are always relocated to <head>, so this fragment of code just does not work, but it is valid. 
> After doing a lot of tests I realize that we can create a "find component expression" and save it on h:outputStylesheet as an attribute, and use it later to locate the right instance in the component tree.
> If the component is inside a datatable, it will get the component state without row, which has the effect to makes the related properties not changeable inside a datatable. It has sense after all because this use case of h:outputStylesheet is to add an style declaration per component added to a page, and not to render inline row (for that use <style> instead, right?).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira