Tudo funcionando numa boa no curso de Spring MVC, somente uma coisa não parece certa, na hora que estou salvando no banco os valores bigdecimais não estão sendo persistidos, ate o ENUM vai certinho menos os valores BigDecimais. Segue minha classe preco
import java.math.BigDecimal;
import javax.persistence.Embeddable;
@Embeddable
public class Preco {
private BigDecimal preco;
private TipoPreco tipo;
public BigDecimal getPreco() {
return preco;
}
public void setPreco(BigDecimal preco) {
this.preco = preco;
}
public TipoPreco getTipo() {
return tipo;
}
public void setTipo(TipoPreco tipo) {
this.tipo = tipo;
}
}
Segue minha classe Produto
package br.com.belissima.salao.models;
import java.util.List;
import javax.persistence.ElementCollection;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Produto {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
private String nome;
private String descricao;
private String fabricante;
private String quantidade;
@ElementCollection
private List<Preco> precos;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getFabricante() {
return fabricante;
}
public void setFabricante(String fabricante) {
this.fabricante = fabricante;
}
public String getQuantidade() {
return quantidade;
}
public void setQuantidade(String quantidade) {
this.quantidade = quantidade;
}
public List<Preco> getPrecos() {
return precos;
}
public void setPrecos(List<Preco> precos) {
this.precos = precos;
}
}
Segue minha classe ProdutoController
package br.com.belissima.salao.controllers;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import br.com.belissima.salao.daos.ProdutoDAO;
import br.com.belissima.salao.models.Produto;
import br.com.belissima.salao.models.TipoPreco;
@Controller
public class ProdutoController {
@Autowired
private ProdutoDAO produtoDao;
@RequestMapping("/produtos/formCadastro")
public ModelAndView cadastrar() {
ModelAndView modelAndView = new ModelAndView("produtos/formCadastro");
modelAndView.addObject("tipos", TipoPreco.values());
return modelAndView;
}
@RequestMapping("/produtos")
public String gravar(Produto produto) {
produtoDao.gravar(produto);
return "produtos/sucesso";
}
}