Boa tarde pessoal, tudo bem?
Estou enfrentando o seguinte erro ao alterar alguns campos que o professor faz.
Segue o erro
org.springframework.beans.NotReadablePropertyException: Invalid property 'precos[0].tipo' of bean class [br.com.casadocodigo.loja.models.Produto]: Bean property 'precos[0].tipo' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?
Item que o professor mexe.
<c:forEach items="${tipos}" var="tipoPreco" varStatus="status">
<div>
<label>${tipoPreco}</label>
<form:input path="precos[${status.index}].valor" />
<form:hidden path="precos[${status.index}].tipo"
value="${tipoPreco}" />
</div>
</c:forEach>
Segue a classe Produto: Fiz o teste com getter e setter, mas tambem nao funcionou.
@Entity
public class Produto {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
private String titulo;
private String descricao;
private int pagina;
@ElementCollection
private List<Preco> precos = new ArrayList<>();
@DateTimeFormat
private LocalDate dataLancamento;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitulo() {
return titulo;
}
public void setTitulo(String titulo) {
this.titulo = titulo;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public int getPagina() {
return pagina;
}
public void setPagina(int pagina) {
this.pagina = pagina;
}
public LocalDate getDataLancamento() {
return dataLancamento;
}
public void setDataLancamento(LocalDate dataLancamento) {
this.dataLancamento = dataLancamento;
}
}
Classe Preco
@Embeddable
public class Preco {
private BigDecimal valor;
private TipoPreco preco;
public BigDecimal getValor() {
return valor;
}
public void setValor(BigDecimal valor) {
this.valor = valor;
}
public TipoPreco getPreco() {
return preco;
}
public void setPreco(TipoPreco preco) {
this.preco = preco;
}
}