I am trying to iterate over a list that contains another list.
@Entity
@Table(name = "session")
public class TrainingSession implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
@OneToMany(cascade = CascadeType.ALL)
private List<ExerciseWrapper> exercises;
@Column
@DateTimeFormat(pattern = "YYYY/MM/DD")
private Date sessionDate;
}
Adding list to the Model:
@RequestMapping("/sessions")
public String getAllSession(Model model){
List<TrainingSession> trainingSessionList = trainingSessionService.getAllTrainingSessions();
model.addAttribute("sessionList", trainingSessionList);
System.out.println(trainingSessionList);
return PREFIX+"sessions";
}
Iteration:
<th:block th:each="trainingSession : ${sessionList}">
<tr><td th:text="${trainingSession.id}"></td></tr>
<tr>
<th:block th:each="exerciseWrapper : *{trainingSession.exercises}">
<tr><td th:text="${exerciseWrapper.id}"></td></tr>
<tr><td th:text="${exerciseWrapper.exercise.name}"></td></tr>
</th:block>
</tr>
This results in error:
Property or field 'id' cannot be found on null
How to access list of exercises?
. Also, the result of
`