Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
40
using ig:gridActivation in a facelet based layout
posted

 Hi,

I use a GridView in a facelet based layout. Without ig:gridActivation the application works.

Inserting  ig:gridActivation tag results in a exception:

 

com.sun.facelets.tag.TagException: /pages/start.xhtml @49,32 <ig:gridActivation> Tag Library supports namespace: http://es.infragistics.com/faces/netadvantage, but no tag was defined for name: gridActivation
at com.sun.facelets.compiler.CompilationManager.pushTag(CompilationManager.java:193)
at com.sun.facelets.compiler.SAXCompiler$CompilationHandler.startElement(SAXCompiler.java:194)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at com.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:232)
at com.sun.facelets.compiler.Compiler.compile(Compiler.java:104)
at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:192)
at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:141)
at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:93)
at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:503)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:553)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:243)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:463)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:308)
at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:518)
at com.ibm._jsp._index._jspService(_index.java:66)
at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:463)
at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:115)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:168)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:92)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:744)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1433)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:93)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213)
at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:741)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510)
 
Used facelet code:
 

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    


<html 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:fmt="http://java.sun.com/jstl/fmt"
    xmlns:acegijsf="http://sourceforge.net/projects/jsf-comp/acegijsf"
    xmlns:t="http://myfaces.apache.org/tomahawk"
    xmlns:ig="http://es.infragistics.com/faces/netadvantage">

    
    
<ui:composition template="/templates/common.xhtml">

       <ui:define name="IdeenVerwaltung">
           <h:panelGrid columns="2">
               <h:outputText value="Anzahl Root Items" />
               <ig:inputDecimal id="RootItemsCount" value="0" />
               <h:outputText value="Anzahl der Items per Ebene" />
               <ig:inputDecimal id="RootItemsCountPerLayer" value="0" />
               <h:outputText value="Anzahl der SubItems" />
               <ig:inputDecimal id="SubItemsCount" value="0" />
           </h:panelGrid>
       </ui:define>
       
    <ui:define name="SearchFilter">
        <h:panelGrid columns="1">
        <h:outputText value="Suche" />
        <ig:inputRegularExpression id="searchInput" value="suche"/>
        <h:outputText value="Filter" />
        <ig:dropDownList dataSource="#{proposalListFilter.filterEntries}" id="ProposalFilter"  />
        </h:panelGrid>
    </ui:define>
    
    
       <ui:define name="Vorschlag">
            
            <ig:gridView
            dataSource="#{proposalListBean.proposalList}"
            pageSize="5"
            resizableColumns="true"
            sortingMode="multi">
           <ig:columnSelectRow/>
           <ig:gridActivation/>
            <ig:column resizable="true" sortBy="generalState" >
                 <f:facet name="header">
                    <h:outputText value="State" />
                 </f:facet>
                 <h:graphicImage url="images/#{DATA_ROW.generalState}.gif" />
            </ig:column>
            <ig:column resizable="true" sortBy="proposalID" >   
                <f:facet name="header">
                    <h:outputText value="ID" />
                 </f:facet>             
                <h:outputText value="#{DATA_ROW.proposalID}" />
            </ig:column>
            <ig:column resizable="true" sortBy="name" >      
                <f:facet name="header">
                    <h:outputText value="Name" />
                 </f:facet>         
                 <h:outputText value="#{DATA_ROW.name}" />
            </ig:column>
             <ig:column resizable="true" sortBy="subject" >
                 <f:facet name="header">
                    <h:outputText value="Subject" />
                 </f:facet>                   
                 <h:outputText value="#{DATA_ROW.subject}" />
            </ig:column>
            <ig:column resizable="true" sortBy="type">  
                <f:facet name="header">
                    <h:outputText value="Type" />
                 </f:facet>                  
                 <h:graphicImage url="images/#{DATA_ROW.type}.gif" />
            </ig:column>
        </ig:gridView>     
            
    </ui:define>
        
    <ui:define name="DetailArea">       
       
      
                    
    </ui:define>
                                
</ui:composition>
</html>

I build the facelet based application using your facelet example. This include also the  netAdvantage.facelet.taglib.xml file

 with the content:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE facelet-taglib PUBLIC
  "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN"
  "http://java.sun.com/dtd/facelet-taglib_1_0.dtd">
<facelet-taglib>
    <namespace>http://es.infragistics.com/faces/netadvantage</namespace>
    <tag>
        <tag-name>checkBoxList</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlCheckBoxList</component-type>       
            <renderer-type>com.infragistics.faces.input.CheckBoxListRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>checkBox</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlCheckBox</component-type>       
            <renderer-type>com.infragistics.faces.input.CheckBoxRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>columnSelectRow</tag-name>
        <component>
            <component-type>com.infragistics.faces.grid.HtmlColumnSelectRow</component-type>       
            <renderer-type>com.infragistics.faces.grid.ColumnSelectRowRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>column</tag-name>
        <component>
            <component-type>com.infragistics.faces.grid.HtmlColumn</component-type>
        </component>
    </tag>
    <tag>
        <tag-name>dateChooser</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlDateChooser</component-type>       
            <renderer-type>com.infragistics.faces.input.DateChooserRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>dropDownList</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlDropDownList</component-type>       
            <renderer-type>com.infragistics.faces.input.DropDownListRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>gridView</tag-name>
        <component>
            <component-type>com.infragistics.faces.grid.HtmlGridView</component-type>       
            <renderer-type>com.infragistics.faces.grid.GridViewRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>inputCurrency</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlInputCurrency</component-type>       
            <renderer-type>com.infragistics.faces.input.InputNumberRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>inputDecimal</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlInputDecimal</component-type>       
            <renderer-type>com.infragistics.faces.input.InputNumberRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>inputEmail</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlInputEmail</component-type>       
            <renderer-type>com.infragistics.faces.input.InputEmailRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>inputPercent</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlInputPercent</component-type>       
            <renderer-type>com.infragistics.faces.input.InputNumberRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>inputRegularExpression</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlInputRegularExpression</component-type>       
            <renderer-type>com.infragistics.faces.input.InputRegularExpressionRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>link</tag-name>
        <component>
            <component-type>com.infragistics.faces.shared.HtmlLink</component-type>       
            <renderer-type>com.infragistics.faces.shared.LinkRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>menuItemCheckmark</tag-name>
        <component>
            <component-type>com.infragistics.faces.menu.HtmlMenuItemCheckmark</component-type>       
            <renderer-type>com.infragistics.faces.menu.MenuItemCheckmarkRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>menuItemSeparator</tag-name>
        <component>
            <component-type>com.infragistics.faces.menu.HtmlMenuItemSeparator</component-type>       
            <renderer-type>com.infragistics.faces.menu.MenuItemSeparatorRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>menuItem</tag-name>
        <component>
            <component-type>com.infragistics.faces.menu.HtmlMenuItem</component-type>       
            <renderer-type>com.infragistics.faces.menu.MenuItemRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>menu</tag-name>
        <component>
            <component-type>com.infragistics.faces.menu.HtmlMenu</component-type>       
            <renderer-type>com.infragistics.faces.menu.MenuRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>pager</tag-name>
        <component>
            <component-type>com.infragistics.faces.shared.HtmlPager</component-type>       
            <renderer-type>com.infragistics.faces.shared.PagerRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>radioButtonList</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlRadioButtonList</component-type>       
            <renderer-type>com.infragistics.faces.input.RadioButtonListRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>radioButton</tag-name>
        <component>
            <component-type>com.infragistics.faces.input.HtmlRadioButton</component-type>       
            <renderer-type>com.infragistics.faces.input.RadioButtonRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>sidebarGroup</tag-name>
        <component>
            <component-type>com.infragistics.faces.bar.HtmlSidebarGroup</component-type>       
            <renderer-type>com.infragistics.faces.bar.SidebarGroupRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>sidebar</tag-name>
        <component>
            <component-type>com.infragistics.faces.bar.HtmlSidebar</component-type>       
            <renderer-type>com.infragistics.faces.bar.SidebarRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>stackbarGroup</tag-name>
        <component>
            <component-type>com.infragistics.faces.bar.HtmlStackbarGroup</component-type>       
            <renderer-type>com.infragistics.faces.bar.StackbarGroupRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>stackbar</tag-name>
        <component>
            <component-type>com.infragistics.faces.bar.HtmlStackbar</component-type>       
            <renderer-type>com.infragistics.faces.bar.StackbarRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>tabItem</tag-name>
        <component>
            <component-type>com.infragistics.faces.tab.HtmlTabItem</component-type>       
            <renderer-type>com.infragistics.faces.tab.TabItemRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>tabView</tag-name>
        <component>
            <component-type>com.infragistics.faces.tab.HtmlTabView</component-type>       
            <renderer-type>com.infragistics.faces.tab.TabViewRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>treeNode</tag-name>
        <component>
            <component-type>com.infragistics.faces.tree.HtmlTreeNode</component-type>       
            <renderer-type>com.infragistics.faces.tree.TreeNodeRenderer</renderer-type>
        </component>
    </tag>
    <tag>
        <tag-name>treeView</tag-name>
        <component>
            <component-type>com.infragistics.faces.tree.HtmlTreeView</component-type>       
            <renderer-type>com.infragistics.faces.tree.TreeViewRenderer</renderer-type>
        </component>
    </tag>
</facelet-taglib>
 

 Some thing is wrong with the configuration. The  <ig:gridActivation/> tag could not be found.

 What I have to do to fix this problem ?

Best Regards

 

Andreas

  • 2301
    posted

     HI:

    Thanks for the thorough explanation of your problem!  This is always helpful.

    Is it possible that the JARs you are using are from a version of NetAdvantage prior to version 8.2? Grid activation was introduced in 8.2 so this is the most likely answer. If not please post the exact version here, and we'll investigate further.

    Thanks,
    Jim