Hi,

I need to create the following construct dynamically in the backing bean:

==============================================================================================
<h:outputText value="Reporting Period"  />
     <h:selectOneMenu value="#{searchHandler.reportingPeriod.rawDate}" 
           binding="#{searchHandler.reportingPeriodSelectOneMenuControl}">
                                                        
         <t:selectItems value="#{searchHandler.reportingPeriods}" 
var="rptPeriod" 
                itemLabel="#{rptPeriod.reportingDateMonthly}" 
itemValue="#{rptPeriod.rawDate}"
                binding="#{searchHandler.reportingPeriodsSelectItemsControl}"
         />
     </h:selectOneMenu>

==============================================================================================

So I'm doing the following in my setter:

==============================================================================================
public void setReportingPeriodSelectOneMenuControl(
        HtmlSelectOneMenu reportingPeriodSelectOneMenuControl) {
    
    
    if (reportingPeriods == null){
        logger.debug("reportingPeriods == null: " +  
                (reportingPeriods==null) + "building reportingPeriods list...");
        reportingPeriods = this.getSearchService().getReportingPeriods();
    }
    
    
    //building <t:selectItems>
    if (reportingPeriodsSelectItemsControl == null){
        reportingPeriodsSelectItemsControl = (UISelectItems) FacesContext
                    .getCurrentInstance().getApplication().createComponent(
                            UISelectItems.COMPONENT_TYPE);
        
    }
    
    reportingPeriodsSelectItemsControl.setValue(reportingPeriods);
    reportingPeriodsSelectItemsControl.setVar("rptPeriod");
    
    String label = null;
    
    
    
    if (DAILY.equals(this.getPeriod())) {
        label = "#{rptPeriod.reportingDateDaily}";
    }else if (MONTHLY.equals(this.getPeriod())) {
        label = "#{rptPeriod.reportingDateMonthly}";
    }
    
    
    reportingPeriodsSelectItemsControl.setItemLabel(label);
    reportingPeriodsSelectItemsControl.setItemValue("#{rptPeriod.rawDate}");
    
    
    
reportingPeriodSelectOneMenuControl.getChildren().add(reportingPeriodsSelectItemsControl);
    
    
    
    
    
    this.reportingPeriodSelectOneMenuControl = 
reportingPeriodSelectOneMenuControl;
    logger.debug("setReportingPeriodSelectOneMenuControl()" + 
reportingPeriodSelectOneMenuControl);
}

================================================================================================

Unfortunately, what I am getting in the page is the combo populated with a 
bunch of strings: #{rptPeriod.reportingDateMonthly}

What am I missing here to link this variable 'rtpPeriod' to the value binding 
expression.  Or should there be a different syntax?

Thanks for you help.
Simeon

==============================================================================
Please access the attached hyperlink for an important electronic communications 
disclaimer: 

http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html
==============================================================================

Reply via email to