1
resposta

Após adicionar as mudanças de EBOOK, IMPRESSO e COMBO, não consigo persistir meus dados no banco. ERRO 404

Boa noite,

Depois que fiz as alterações da aula 03, nao consegui mais persistir os dados no banco.

ao clicar em "Cadastrar" ele direicona para a pagina Produtos/form e ela vem com erro 404.

type Status report

message

description The requested resource is not available.

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<title>Livros de java, Android, Iphone, PHP, Ruby e muito mais -
    Casa do código</title>
<body>
    <form action="/casadocodigo/produtos" method="post">
        <div>
            <label>Título</label> <input type="text" name="titulo" />
        </div>
        <div>
            <label>Descrição</label>
            <textarea rows="10" cols="20" name="descricao"></textarea>
        </div>
        <div>
            <label>Páginas</label> <input type="text" name="paginas" />
        </div>


        <c:forEach items="${tipo}" var="tipoPreco" varStatus="status">
            <div>
                <label>${tipoPreco}</label> <input type="text"
                    name="precos[${status.index}].valor" /> <input type="hidden"
                    name="precos[${status.index}].tipo" value="${tipoPreco}" />
            </div>
        </c:forEach>


        <button type="submit">Cadastrar</button>
    </form>
</body>
</html>
package br.com.casadocodigo.loja.daos;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.transaction.Transactional;

import org.springframework.stereotype.Repository;

import br.com.casadocodigo.loja.model.Produto;

@Repository
@Transactional
public class ProdutoDAO {

    @PersistenceContext
    private EntityManager manager;

    public void gravar(Produto produto) {
        manager.persist(produto);
    }

}
package br.com.casadocodigo.loja.model;

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 titulo;
    private String descricao;
    private int paginas;

    @ElementCollection
    private List<Preco> precos;

    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 getPaginas() {
        return paginas;
    }
    public void setPaginas(int paginas) {
        this.paginas = paginas;
    }
    @Override
    public String toString() {
        return "Produto [titulo=" + titulo + ", descricao=" + descricao + ", paginas=" + paginas + "]";
    }


    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public List<Preco> getPrecos() {
        return precos;
    }
    public void setPrecos(List<Preco> precos) {
        this.precos = precos;
    }




}
package br.com.casadocodigo.loja.model;

import java.math.BigDecimal;

import javax.persistence.Embeddable;

@Embeddable
public class Preco {

        private BigDecimal valor;
        private TipoPreco tipo;
        public BigDecimal getValor() {
            return valor;
        }
        public void setValor(BigDecimal valor) {
            this.valor = valor;
        }
        public TipoPreco getTipo() {
            return tipo;
        }
        public void setTipo(TipoPreco tipo) {
            this.tipo = tipo;
        }


}
1 resposta

Acho que o problema é o "P" maiúsculo de Produtos/form