Quando executei o submit nos valores do livro, com a tag input do type ="text", tive uma NumberFormatException. Embora tenha colocado números nos campos.
Investigando, pensei na possibilidade dos números estarem sendo passados para o Objeto Produto como String e por isso estava dando um erro, pois a classe Preco, atributo de Produto, está esperando um número e não uma String. Resolvi testar mudando a tag input para type = "number" e não tive mais essa exception.
Por que os números inputados não foram parseados de String para Number ou algo assim? Há alguma forma de cast que eu possa fazer?
Logo mais posto o código.