>From: "Joshua Pheneger" [EMAIL PROTECTED] 
>
>I cannot get a custom component to render.
>I have created a custom component, renderer, and tag classes.  
>I have added my custom tag to the taglib file.  I have a backing bean that is 
>supplying the appropriate 
>information.  But when I attempt to call the component I get the following 
>error: "Undefined component type 
>HotelActivityComponent".
>
>
>How do I go about registering my components so that they are seen by the 
>web-app?


Components and renderers are registered in the faces-conifg.xml file.  
Component renderers (optional) are also registered in the faces-config [1].  

Each component [2] should provide a "family".  If the rendering is delegated 
then the "rendererType" should be specified.  These values correspond to the 
"component-type" and "renderer-type" in the faces config.

JSF will automatically load "faces-config" files in the "/META-INF" folders and 
within the "/WEB-INF".  You can optional specify additional configuration files 
in the web.xml.

If you are using the component with JSP, you need a JSP tag to instantiate the 
component and add it to the component tree.  JSF/JSP tags act as "factories" 
versus encapsulating rendering of mark-up.  The JSP tag should specify the 
component type and renderer type [3].



[1]  
https://svn.apache.org/viewvc/shale/framework/trunk/shale-core/src/main/resources/META-INF/faces-config.xml?view=markup

[2] 
https://svn.apache.org/viewvc/shale/framework/trunk/shale-core/src/main/java/org/apache/shale/component/Token.java?view=markup

[3] 
https://svn.apache.org/viewvc/shale/framework/trunk/shale-core/src/main/java/org/apache/shale/taglib/TokenTag.java?view=markup

>
>Regards,
>Joshua Pheneger


Gary

Reply via email to