estoy teniendo un problema con el tag <c:forEch, ya que se está comportando de manera un tanto inesperada, ya he buscado e intentado corregirlo pero no logro encontrar una solución, primero les platico un poco de lo que tengo y despues lo que ocurre.
Desde el controlador estoy cargando esta lista:
Código Java:
La clase VacacionesPO está definida así (getters y setter fueron omitidos):Ver original
public List<VacacionesPO> historicoDummy(){ List<VacacionesPO> lst = new ArrayList<VacacionesPO>(); VacacionesPO item = null; item = new VacacionesPO(); item.setPernr(i.toString()); item.setPnalt(i.toString()); item.setBukrs(i.toString()); item.setInivac(i.toString()); item.setFinvac(i.toString()); item.setNumcon(i.toString()); item.setPeriod(i.toString()); item.setAnoper(i.toString()); item.setVacdia(i.toString()); lst.add(item); } return lst; }
Código Java:
Ver original
En mi jsp tengo esto:
Código HTML:
Ver original
si ejecuto el código así como está me manda este error:
Cita:
Pero si cambio esta línea <p th:text="${h.finvac}" /> por esta otra <p th:text="${historico.get(0).finvac}" /> sí me da el resultado.org.springframework.expression.spel.SpelEvaluation Exception: EL1007E:(pos 0): Property or field 'finvac' cannot be found on null
Otra cosa, con esta modificación yo esperaría obtener 10 líneas iguales (sólo obtengo 1), ya que la lista que entrego desde el controlador contiene 10 elementos, de hecho si hago esto: <p th:text="${historico.get(0).finvac}" /> me regresa un 10 (tal como esperaría).
Si imprimo la variable que contiene la lista me da esta salida:
Cita:
Pero si dentro del forEach imprimo sólo la variable h no aparece información, es decir, no marca error pero únicamente coloca los tags p (<p th:text="${h}" />).[com.gm.parse.obj.VacacionesPO@486ebbfc, com.gm.parse.obj.VacacionesPO@74b59ace, com.gm.parse.obj.VacacionesPO@4bbb6957, com.gm.parse.obj.VacacionesPO@2e7af004, com.gm.parse.obj.VacacionesPO@13760f6c, com.gm.parse.obj.VacacionesPO@4b4d8426, com.gm.parse.obj.VacacionesPO@5b2cadc9, com.gm.parse.obj.VacacionesPO@22af9c78, com.gm.parse.obj.VacacionesPO@101ea2e, com.gm.parse.obj.VacacionesPO@264a329c]
¿Qué estoy haciendo mal?
¿O qué no estoy haciendo?
Gracias por su tiempo y ayuda.
Saludos.