Details
- 
        Type: Bug Bug
- 
        Status: Closed
- 
            Priority: Major Major
- 
            Resolution: Fixed
- 
            Affects Version/s: 3.0.RC1
- 
            Component/s: ACE-Components
- 
            Labels:None
- 
            Environment:ICEfaces 2 ACE MyFaces 2
- 
                        Assignee Priority:P1
Description
                    I'm seeing the following warnings logged when running the ContextMenu example of the ACE Comp Suite when using MyFaces:
WARNING: Unsupported component-family/renderer-type: org.icefaces.ace.component.Menu/javax.faces.Button
4-Nov-2011 11:05:25 AM org.apache.myfaces.renderkit.html.HtmlRenderKitImpl getRenderer
4-Nov-2011 11:05:25 AM javax.faces.component.UIComponentBase getRenderer
WARNING: No Renderer found for component {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /showcase.xhtml][Class: javax.faces.component.html.HtmlBody,Id: _2068169349_6d256d7f][Class: javax.faces.component.html.HtmlForm,Id: j_id1952249420_2dcf46b5][Class: org.icefaces.ace.component.contextmenu.ContextMenu,Id: j_id1952249420_2dcf46ab][Class: org.icefaces.ace.component.menuitem.MenuItem,Id: _1952249420_2dcf4681]} (component-family=org.icefaces.ace.component.Menu, renderer-type=javax.faces.Button) created from: /resources/examples/ace/contextMenu/contextMenu.xhtml at line 47 and column 73
            
WARNING: Unsupported component-family/renderer-type: org.icefaces.ace.component.Menu/javax.faces.Button
4-Nov-2011 11:05:25 AM org.apache.myfaces.renderkit.html.HtmlRenderKitImpl getRenderer
4-Nov-2011 11:05:25 AM javax.faces.component.UIComponentBase getRenderer
WARNING: No Renderer found for component {Component-Path : [Class: javax.faces.component.UIViewRoot,ViewId: /showcase.xhtml][Class: javax.faces.component.html.HtmlBody,Id: _2068169349_6d256d7f][Class: javax.faces.component.html.HtmlForm,Id: j_id1952249420_2dcf46b5][Class: org.icefaces.ace.component.contextmenu.ContextMenu,Id: j_id1952249420_2dcf46ab][Class: org.icefaces.ace.component.menuitem.MenuItem,Id: _1952249420_2dcf4681]} (component-family=org.icefaces.ace.component.Menu, renderer-type=javax.faces.Button) created from: /resources/examples/ace/contextMenu/contextMenu.xhtml at line 47 and column 73
Issue Links
Activity
| Field | Original Value | New Value | 
|---|---|---|
| Salesforce Case | [] | |
| Assignee Priority | P2 | |
| Assignee | Ken Fyten [ ken.fyten ] | 
| Salesforce Case | [] | |
| Assignee Priority | P2 | P1 | 
| Assignee | Ken Fyten [ ken.fyten ] | Mark Collette [ mark.collette ] | 
| Salesforce Case | [] | |
| Assignee Priority | P1 | P2 | 
| Salesforce Case | [] | |
| Fix Version/s | 3.0.RC1 [ 10300 ] | |
| Fix Version/s | 3.0 [ 10241 ] | |
| Assignee Priority | P2 | P1 | 
| Fix Version/s | 3.0 [ 10241 ] | |
| Fix Version/s | 3.0.RC1 [ 10300 ] | |
| Affects Version/s | 3.0.RC1 [ 10300 ] | |
| Affects Version/s | 2.1-Beta2 [ 10294 ] | 
| Repository | Revision | Date | User | Message | 
| ICEsoft Public SVN Repository | #26767 | Wed Dec 07 03:26:32 MST 2011 | mark.collette |  | 
| Files Changed | ||||
|  MODIFY
            				/icefaces3/trunk/icefaces/ace/generator/src/org/icefaces/ace/generator/artifacts/ComponentArtifact.java | 
| Status | Open [ 1 ] | Resolved [ 5 ] | 
| Resolution | Fixed [ 1 ] | 
| Fix Version/s | 3.0.RC2 [ 10313 ] | 
| Status | Resolved [ 5 ] | Closed [ 6 ] | 
 
         
    
I thought this might be caused by an empty renderer type. For example the MenuItemBase that is built by our generator.
public class MenuItemBase extends javax.faces.component.UICommand{
public static final String COMPONENT_TYPE = "org.icefaces.ace.component.MenuItem";
public static final String RENDERER_TYPE = "";
I consulted the component team as to whether this should be an empty string or something else (like null). Mark said he thought it should be null so I tried adjusting the ComponentArtifact.startComponentClass method to check for empty Strings and use null in those situations:
writer.append("\n\tpublic static final String COMPONENT_TYPE = \""+ component.componentType() + "\";");
{ rendererType = null; }String rendererType = component.rendererType();
if( null != rendererType ){
if("null".equals(rendererType.trim()) || "".equals(rendererType.trim()))
else
{ rendererType = "\"" + rendererType + "\""; }}
That didn't appear to help so I created this JIRA to capture the issue. Because it's a warning and because it appears not to interfere with functionality as near as I could tell, the priority is not high.
Assigning to Ken for component team assignment.