Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.5.1
-
Component/s: ICE-Components
-
Labels:None
-
Environment:Operating System: All
Platform: All
Description
I tried runnng the component-showcase WAR, build with HEAD code, but I got this
exception:
java.lang.ClassNotFoundException: com.icesoft.faces.ext.taglib.OutputTextTag
So then I tried the Facelets build of component-showcase, and got this error
message:
Problem in renderResponse: /showcase-facelet.jspx @17,60 <ice:outputText> Tag
Library supports namespa
ce: http://www.icesoft.com/icefaces/component, but no tag was defined for name:
outputText
com.sun.facelets.tag.TagException: /showcase-facelet.jspx @17,60
<ice:outputText> Tag Library supports namespace: http://www.icesoft.com/icefaces
/component, but no tag was defined for name: outputText
Then I looked at the Facelets taglib generation log and found that it was
complaining about not finding several Tag classes, throwing ClassNotFoundExceptions:
Tag name: column, Tag class: com.icesoft.faces.ext.taglib.UIColumnTag
Tag name: columns, Tag class:
com.icesoft.faces.ext.taglib.UIColumnsTag
Tag name: rowSelector, Tag class:
com.icesoft.faces.ext.taglib.RowSelectorTag
Tag name: commandButton, Tag class:
com.icesoft.faces.ext.taglib.CommandButtonTag
Tag name: commandLink, Tag class:
com.icesoft.faces.ext.taglib.CommandLinkTag
Tag name: dataTable, Tag class:
com.icesoft.faces.ext.taglib.DataTableTag
Tag name: form, Tag class: com.icesoft.faces.ext.taglib.FormTag
Tag name: graphicImage, Tag class:
com.icesoft.faces.ext.taglib.GraphicImageTag
Tag name: inputHidden, Tag class:
com.icesoft.faces.ext.taglib.InputHiddenTag
Tag name: inputSecret, Tag class:
com.icesoft.faces.ext.taglib.InputSecretTag
Tag name: inputText, Tag class:
com.icesoft.faces.ext.taglib.InputTextTag
Tag name: inputTextarea, Tag class:
com.icesoft.faces.ext.taglib.InputTextareaTag
Tag name: message, Tag class: com.icesoft.faces.ext.taglib.MessageTag
Tag name: messages, Tag class: com.icesoft.faces.ext.taglib.MessagesTag
Tag name: outputFormat, Tag class:
com.icesoft.faces.ext.taglib.OutputFormatTag
Tag name: outputLabel, Tag class:
com.icesoft.faces.ext.taglib.OutputLabelTag
Tag name: outputLink, Tag class:
com.icesoft.faces.ext.taglib.OutputLinkTag
Tag name: outputText, Tag class:
com.icesoft.faces.ext.taglib.OutputTextTag
Tag name: panelGrid, Tag class:
com.icesoft.faces.ext.taglib.PanelGridTag
Tag name: panelGroup, Tag class:
com.icesoft.faces.ext.taglib.PanelGroupTag
Tag name: selectBooleanCheckbox, Tag class:
com.icesoft.faces.ext.taglib.SelectBooleanCheckboxTag
Tag name: selectManyCheckbox, Tag class:
com.icesoft.faces.ext.taglib.SelectManyCheckboxTag
Tag name: selectManyListbox, Tag class:
com.icesoft.faces.ext.taglib.SelectManyListboxTag
Tag name: selectManyMenu, Tag class:
com.icesoft.faces.ext.taglib.SelectManyMenuTag
Tag name: selectOneListbox, Tag class:
com.icesoft.faces.ext.taglib.SelectOneListboxTag
Tag name: selectOneMenu, Tag class:
com.icesoft.faces.ext.taglib.SelectOneMenuTag
Tag name: selectOneRadio, Tag class:
com.icesoft.faces.ext.taglib.SelectOneRadioTag
So it seems that there's some problem wit the generation code, that's using the
package name com.icesoft.faces.ext.taglib for the Tag classes, when it should
instead use com.icesoft.faces.component.ext.taglib
exception:
java.lang.ClassNotFoundException: com.icesoft.faces.ext.taglib.OutputTextTag
So then I tried the Facelets build of component-showcase, and got this error
message:
Problem in renderResponse: /showcase-facelet.jspx @17,60 <ice:outputText> Tag
Library supports namespa
ce: http://www.icesoft.com/icefaces/component, but no tag was defined for name:
outputText
com.sun.facelets.tag.TagException: /showcase-facelet.jspx @17,60
<ice:outputText> Tag Library supports namespace: http://www.icesoft.com/icefaces
/component, but no tag was defined for name: outputText
Then I looked at the Facelets taglib generation log and found that it was
complaining about not finding several Tag classes, throwing ClassNotFoundExceptions:
Tag name: column, Tag class: com.icesoft.faces.ext.taglib.UIColumnTag
Tag name: columns, Tag class:
com.icesoft.faces.ext.taglib.UIColumnsTag
Tag name: rowSelector, Tag class:
com.icesoft.faces.ext.taglib.RowSelectorTag
Tag name: commandButton, Tag class:
com.icesoft.faces.ext.taglib.CommandButtonTag
Tag name: commandLink, Tag class:
com.icesoft.faces.ext.taglib.CommandLinkTag
Tag name: dataTable, Tag class:
com.icesoft.faces.ext.taglib.DataTableTag
Tag name: form, Tag class: com.icesoft.faces.ext.taglib.FormTag
Tag name: graphicImage, Tag class:
com.icesoft.faces.ext.taglib.GraphicImageTag
Tag name: inputHidden, Tag class:
com.icesoft.faces.ext.taglib.InputHiddenTag
Tag name: inputSecret, Tag class:
com.icesoft.faces.ext.taglib.InputSecretTag
Tag name: inputText, Tag class:
com.icesoft.faces.ext.taglib.InputTextTag
Tag name: inputTextarea, Tag class:
com.icesoft.faces.ext.taglib.InputTextareaTag
Tag name: message, Tag class: com.icesoft.faces.ext.taglib.MessageTag
Tag name: messages, Tag class: com.icesoft.faces.ext.taglib.MessagesTag
Tag name: outputFormat, Tag class:
com.icesoft.faces.ext.taglib.OutputFormatTag
Tag name: outputLabel, Tag class:
com.icesoft.faces.ext.taglib.OutputLabelTag
Tag name: outputLink, Tag class:
com.icesoft.faces.ext.taglib.OutputLinkTag
Tag name: outputText, Tag class:
com.icesoft.faces.ext.taglib.OutputTextTag
Tag name: panelGrid, Tag class:
com.icesoft.faces.ext.taglib.PanelGridTag
Tag name: panelGroup, Tag class:
com.icesoft.faces.ext.taglib.PanelGroupTag
Tag name: selectBooleanCheckbox, Tag class:
com.icesoft.faces.ext.taglib.SelectBooleanCheckboxTag
Tag name: selectManyCheckbox, Tag class:
com.icesoft.faces.ext.taglib.SelectManyCheckboxTag
Tag name: selectManyListbox, Tag class:
com.icesoft.faces.ext.taglib.SelectManyListboxTag
Tag name: selectManyMenu, Tag class:
com.icesoft.faces.ext.taglib.SelectManyMenuTag
Tag name: selectOneListbox, Tag class:
com.icesoft.faces.ext.taglib.SelectOneListboxTag
Tag name: selectOneMenu, Tag class:
com.icesoft.faces.ext.taglib.SelectOneMenuTag
Tag name: selectOneRadio, Tag class:
com.icesoft.faces.ext.taglib.SelectOneRadioTag
So it seems that there's some problem wit the generation code, that's using the
package name com.icesoft.faces.ext.taglib for the Tag classes, when it should
instead use com.icesoft.faces.component.ext.taglib
the build.xml is using an old package name com.icesoft.faces.ext.taglib
<!-- generate tld file -->
<java classname="com.icesoft.metadata.generators.Main" failonerror="true"
fork="true">
so change from
<arg line="-T com.icesoft.faces.ext.taglib" />
to the following
<arg line="-T com.icesoft.faces.component.ext.taglib" />