[ 
https://issues.apache.org/jira/browse/TOMAHAWK-858?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12581381#action_12581381
 ] 

Michael Lipp commented on TOMAHAWK-858:
---------------------------------------

Thought about it again. Actually, the setXXX methods always set the local 
value, thus overriding any value binding. Therefore the *real* patch is to 
modify broadcast:

    public void broadcast(FacesEvent event) throws AbortProcessingException {
        if (event instanceof TabChangeEvent)
        {
            TabChangeEvent tabChangeEvent = (TabChangeEvent)event;
            if (tabChangeEvent.getComponent() == this)
            {
                ValueBinding vb = getValueBinding("selectedIndex");
                if (vb == null) {
                    setSelectedIndex(tabChangeEvent.getNewTabIndex());
                } else {
                    vb.setValue(getFacesContext(), 
                    new Integer(tabChangeEvent.getNewTabIndex()));
                }
                getFacesContext().renderResponse();
            }
        }
        ...

> Property selectedIndex of the panelTabbedPane component does not accept value 
> bindings
> --------------------------------------------------------------------------------------
>
>                 Key: TOMAHAWK-858
>                 URL: https://issues.apache.org/jira/browse/TOMAHAWK-858
>             Project: MyFaces Tomahawk
>          Issue Type: Bug
>          Components: Tabbed Pane
>    Affects Versions: 1.1.5-SNAPSHOT
>         Environment: WinXP, JDK 1.5, JBoss 4.0.4 GA, Facelets
>            Reporter: Michail Jekimov
>         Attachments: HtmlPanelTabbedPane.class, HtmlPanelTabbedPane.java
>
>
> The following works fine:
> <t:panelTabbedPane styleClass="panelTabbedPane"
>               activeTabStyleClass="activeTab" 
> inactiveTabStyleClass="inactiveTab"
>               tabContentStyleClass="tabContent"
>               selectedIndex="3"
>               disabledTabStyleClass="inactiveTab" serverSideTabSwitch="false">
>               <t:panelTab id="tab1" label="Tab 1">
>                       <ui:include src="/Tab1.xhtml" />
>               </t:panelTab>
>               <t:panelTab id="tab2" label="Tab 2">
>                       <ui:include src="/Tab2.xhtml" />
>               </t:panelTab>
>                 <t:panelTab id="tab3" label="Tab 3">
>                       <ui:include src="/Tab3.xhtml" />
>               </t:panelTab>
> </t:panelTabbedPane>
> I.e. the tab tab3 is visible when the tabbed pane is rendered. But if I set 
> selectedIndex="#{myBean.selectedTabIndex}" then tab1 is always visible first, 
> regardless of the value of myBean.selectedTabIndex

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to