I have a form that looks somewhat like this:
public class MaintainForecastInputForm extends ActionForm {
private MainMenuForm mainMenuForm = new MainMenuForm();
public SelectProdLineAssociationForm selectProdLineAssociationForm = new SelectProdLineAssociationForm();
private EconometricDataForm econometricDataForm = new EconometricDataForm();
private EconometricImportDownloadForm econometricImportDownloadForm = new EconometricImportDownloadForm();
private String userAction;
private List<MaintainForecastInputForm.DemandForecast> demands = new ArrayList<MaintainForecastInputForm.DemandForecast>();
private List<MaintainForecastInputForm.DemandForecast> forecasts = new ArrayList<MaintainForecastInputForm.DemandForecast>();
private DemandForecast iimsForecast = new DemandForecast();
private DemandForecast econometricForecast = new DemandForecast();
public static class DemandForecast {
private String subType;
private String shortTermWtAvg="0.0";
private String midTermWtAvg="0.0";
private String longTermWtAvg="0.0";
private String shortTermPct="0.0";
private String midTermPct="0.0";
private String longTermPct="0.0";
private List yearDemands = new ArrayList();
public static class Year {
private String fyTotalValue="0.0";
private String fyPctChange="0.0";
private List monthDemands = new ArrayList();
public String getFyPctChange() {
return fyPctChange;
}
public void setFyPctChange(String fyPctChange) {
this.fyPctChange = fyPctChange;
}
public String getFyTotalValue() {
return fyTotalValue;
}
public void setFyTotalValue(String fyTotalValue) {
this.fyTotalValue = fyTotalValue;
}
} // Year
public static class Month {
private String demandValue="0.0";
private String demandQuantity="0.0";
public String getDemandQuantity() {
return demandQuantity;
}
public void setDemandQuantity(String demandQuantity) {
this.demandQuantity = demandQuantity;
}
public String getDemandValue() {
return demandValue;
}
public void setDemandValue(String demandValue) {
this.demandValue = demandValue;
}
} // Month
public String getLongTermPct() {
return longTermPct;
}
public void setLongTermPct(String longTermPct) {
this.longTermPct = longTermPct;
}
public String getLongTermWtAvg() {
return longTermWtAvg;
}
public void setLongTermWtAvg(String longTermWtAvg) {
this.longTermWtAvg = longTermWtAvg;
}
public String getMidTermPct() {
return midTermPct;
}
public void setMidTermPct(String midTermPct) {
this.midTermPct = midTermPct;
}
public String getMidTermWtAvg() {
return midTermWtAvg;
}
public void setMidTermWtAvg(String midTermWtAvg) {
this.midTermWtAvg = midTermWtAvg;
}
public String getShortTermPct() {
return shortTermPct;
}
public void setShortTermPct(String shortTermPct) {
this.shortTermPct = shortTermPct;
}
public String getShortTermWtAvg() {
return shortTermWtAvg;
}
public void setShortTermWtAvg(String shortTermWtAvg) {
this.shortTermWtAvg = shortTermWtAvg;
}
public String getSubType() {
return subType;
}
public void setSubType(String subType) {
this.subType = subType;
}
public List getYearDemands() {
return yearDemands;
}
public void setYearDemands(List yearDemands) {
this.yearDemands = yearDemands;
}
} // DemandForecast
}
and in my JSP I have the following:
<c:forEach items="${form.iimsForecast.yearDemands}" var="yearDemand" varStatus="year">
<tr>
<td>${yearDemand.fiscalYear}</td>
<c:forEach items="${yearDemand.monthDemands}" var="yearMonth" varStatus="month">
<c:choose>
<c:when test="${year.count == 1 && month.count < yearDemand.currentMonth}">
<td class="lightShaded dmnd">
<html-el:text property="form.iimsForecast.yearDemands.monthDemands.demandValue">
</td>
...
I'm getting a JSP exception - getter property is not been found in the form although it is there. Can somebody help me with this problem please?