>Hi,
>
>I am new to Shale and Clay and am getting the following error during page
>rendering even the generated page looks ok:
>
>org.apache.myfaces.renderkit.html.HtmlRendererUtils 
>findUIOutputConverterFailSafe
>SEVERE: Error finding Converter for component with id
>clayView:_id0:formListenerSignup:addressCountry
>
>HTML fragment
><select jsfid="addressCountry" id="addressCountry">
>    <option value="UK">U.K.</option>

I believe that this error is thrown when the data type of your managed bean 
"country" property is not a String and you have not specified a converter.

You can handle this a couple ways in Clay.  You can use a value binding 
attribute expression or a nested converter.

**integerConverter is already defined in the base clay config file **
<!-- 
      Converts a string value into a primitive int type and back to a string.
-->                        
<component jsfid="integerConverter" componentType="javax.faces.Integer"/> 

<component jsfid="addressCountry" extends="selectOneMenu" id="addressCountry" 
allowBody="false"> 
   <attributes>
     <set name="value" value="[EMAIL PROTECTED]" />
     <set name="required" value="true" />
   </attributes>
 
   <element renderId="0" jsfid="selectItems"> 
       <attributes>
      <set name="value" value="#{miscDao.countries}" />
       </attributes>
   </element>
   <converter jsfid="integerConverter" />
</component>

** OR **
<component jsfid="addressCountry" extends="selectOneMenu" id="addressCountry" 
allowBody="false"> 
   <attributes>
     <set name="value" value="[EMAIL PROTECTED]" />
     <set name="required" value="true" />
   </attributes>
 
   <element renderId="0" jsfid="selectItems"> 
       <attributes>
      <set name="value" value="#{miscDao.countries}" />
      <set name="converter" value="[EMAIL PROTECTED]" />
       </attributes>
   </element>
</component>


Gary

Reply via email to