You need to define tabChangeListener in your tomahawk taglib.xml file.
I'm not sure if there's a standard component behind that, or simply a
JSP tag.   If it's a JSP tag, you'll have to write a facelets tag
handler for it or get one from someone else who's written one.

tomahawk.tld is NOT used by facelets.   That file is only used with JSP.


On 8/26/06, Wendy Chou <[EMAIL PROTECTED]> wrote:
I am trying to use tomahawk's TabChangeListener with PanelTabbedPane, but
when I add the tabChangeListener tag in the body of the <t:panelTabbedPane
/> , I get an error: "<t:tabChangeListener> Tag Library supports namespace:
http://myfaces.apache.org/tomahawk, but no tag was defined
for name: tabChangeListener". What kind of configuration do I have to do to
use that tag?

Here is my xhtml source:

<ui:composition xmlns="http://www.w3.org/1999/xhtml"; xmlns:ui=
"http://java.sun.com/jsf/facelets";
xmlns:h="http://java.sun.com/jsf/html";
 xmlns:f="http://java.sun.com/jsf/core";
xmlns:c="http://java.sun.com/jstl/core
"
 xmlns:t="http://myfaces.apache.org/tomahawk"; xmlns:fn="
http://java.sun.com/jsp/jstl/functions";
xmlns:fr="http://myproject.com/test/jsf";>

<t:panelTabbedPane selectedIndex=
"#{coverageDisplay.startIndex}" serverSideTabSwitch="#{true}">
 <t:panelTab label="#{lbls.vehCovDetailsTab1}"
 rendered="#{vehiclesBean.vehicles.rowCount > 0}" >
 <fr:vehCovSummTab />
 </t:panelTab>
 <t:panelTab label=
"#{lbls.vehCovDetailsTab2}" rendered="#{vehiclesBean.vehicles.rowCount > 3}"
>
 <fr:vehCovSummTab />
 </t:panelTab>
 <t:panelTab label=
"#{lbls.vehCovDetailsTab3}" rendered="#{vehiclesBean.vehicles.rowCount > 6}"
>
 <fr:vehCovSummTab />
 </t:panelTab>


 <t:tabChangeListener type="myproject.MyTabChangeListener" />
</t:panelTabbedPane>



My tomahawk.taglib.xml :

 <tag>
 <tag-name>panelTabbedPane</tag-name>
 <component>
<component-type>org.apache.myfaces.HtmlPanelTabbedPane</component-type>

 <renderer-type>org.apache.myfaces.TabbedPane</renderer-type>
 </component>
 </tag>



My tomahawk.tld:

 <!-- panelTabbedPane -->
 <tag>
 <name>panelTabbedPane</name>
<tag-class>org.apache.myfaces.custom.tabbedpane.HtmlPanelTabbedPaneTag</tag-class>

 <body-content>JSP</body-content>
 <!-- UIPanel attributes -->
 <!-- UIComponent attributes -->
 <attribute>
 <name>id</name>

 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <type>java.lang.String</type>
 <description>Every component may have an unique id. Automatically created
if omitted.</description>
 </attribute>
 <attribute>
 <name>rendered</name>
 <required>false</required>

 <rtexprvalue>false</rtexprvalue>
 <type>java.lang.String</type>
 <description>If false, this component will not be rendered.</description>

 </attribute>
 <attribute>
 <name>binding</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>

 <type>java.lang.String</type>
 <description>Component binding.</description>
 </attribute>


 <!-- HTML 4.0 universal attributes -->

 <attribute><name>dir</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>lang</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>style</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>title</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute>
 <name>styleClass</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <description>Corresponds to the HTML
class attribute.</description>
 </attribute>

 <!-- HTML 4.0 event-handler attributes -->
 <attribute><name>onclick</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>ondblclick</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
<attribute><name>onmousedown</name><required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>onmouseup</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
<attribute><name>onmouseover</name><required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

<attribute><name>onmousemove</name><required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>onmouseout</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>onkeypress</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>onkeydown</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>onkeyup</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <!-- HTML 4.0 table attributes -->

 <attribute><name>align</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>border</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>bgcolor</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>cellpadding</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>cellspacing</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>datafld</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>datasrc</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>dataformatas</name>
<required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>frame</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>rules</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>

 <attribute><name>summary</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>
 <attribute><name>width</name> <required>false</required>
<rtexprvalue>false</rtexprvalue></attribute>


 <!-- MyFaces extension: user role attributes -->
 <attribute>
 <name>enabledOnUserRole</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>

 <description>
 If user is in given role, this component will be rendered
 normally. If not, no hyperlink is rendered but all nested

 tags (=body) are rendered.
 </description>
 </attribute>
 <attribute>
 <name>visibleOnUserRole</name>
 <required>false</required>

 <rtexprvalue>false</rtexprvalue>
 <description>
 If user is in given role, this component will be rendered
 normally. If not, nothing is rendered and the body of
this tag
 will be skipped.
 </description>
 </attribute>

 <attribute>
 <name>selectedIndex</name>

 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <description>
 Index of tab that is selected by default.
 </description>

 </attribute>
 <attribute>
 <name>activeTabStyleClass</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>

 <description>
 Style class of the active tab cell.
 </description>
 </attribute>
 <attribute>

 <name>inactiveTabStyleClass</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <description>
 Style
class of the inactive tab cells.
 </description>
 </attribute>
 <attribute>
 <name>disabledTabStyleClass</name>

 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <description>
 Style class of the disabled tab cells.

 </description>
 </attribute>
 <attribute>
 <name>activeSubStyleClass</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>

 <description>
 Style class of the active tab sub cell.
 </description>
 </attribute>
 <attribute>

 <name>inactiveSubStyleClass</name>
 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <description>
 Style
class of the inactive tab sub cells.
 </description>
 </attribute>
 <attribute>
 <name>tabContentStyleClass</name>

 <required>false</required>
 <rtexprvalue>false</rtexprvalue>
 <description>
 Style class of the active tab content cell.

 </description>
 </attribute>
 </tag>

 <!-- tab change listener -->
 <tag>
 <name>tabChangeListener</name>
 <tag-class>
org.apache.myfaces.custom.tabbedpane.TabChangeListenerTag</tag-class>
 <body-content>empty</body-content>
 <attribute>
 <name>type</name>
 <required>true</required>

 <rtexprvalue>false</rtexprvalue>
 </attribute>
 </tag>

Reply via email to