Relacionamento está funcionando, só não está salvando a categoria selecionada

2 respostas Resolvido
D

Seleciono a categoria para o Artigo que está sendo criado, porém só a categoria que não salva quando envia, o restante dos campos está salvando. Alguém poderia me ajudar?

package br.com.blog.model;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import org.hibernate.annotations.Cascade;

@Entity
public class Artigo {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@ManyToOne
@JoinColumn(name="categories")
private Categories categories;
private String title;
private String body;


public Categories getCategories() {
   return categories;
}
public void setCategories(Categories categories) {
   this.categories = categories;
}
public int getId() {
   return id;
}
public void setId(int id) {
   this.id = id;
}
public String getTitle() {
   return title;
}
public void setTitle(String title) {
   this.title = title;
}
    public String getBody() {
        return body;
    }
    public void setBody(String body) {
        this.body = body;
    }
 }




<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="<c:url value="/artigos/save"/>" method="post">
<label>Cadastrar Artigo:</label>
Titulo:<input id="title" type="text" name="title" />
<p>
Post:<input id="body" type="text" name="body" />
</p>
Categoria:<select name="artigo.categories" id="artigo.categories">
<c:forEach var="categories" items="${categories}">
<option value="${categories.id}">${categories.name}</option>
</c:forEach>
</select>
<button type="submit">Enviar</button>
</form>
</body> 
</html>

2 Respostas

D
Solucao aceita

Galera consegui resolver. Estava faltando colocar o categories.id.

murilo_galvao

Só coloca a pergunta como resolvida então brother fazendo o favor :smiley:

Criado 15 de janeiro de 2016
Ultima resposta 15 de jan. de 2016
Respostas 2
Participantes 2