# Bind - Spring MVC

**URL:** <https://forum.casadocodigo.com.br/t/bind-spring-mvc/1055>\
**Category:** Livros\
**Tags:** spring-mvc\
**Created:** [Maio 30, 2018, 1:08pm UTC](https://forum.casadocodigo.com.br/t/bind-spring-mvc/1055 "2018-05-30T13:08:57Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![davi.as](https://avatars.discourse-cdn.com/v4/letter/d/a88e4f/32.png) [@davi.as](https://forum.casadocodigo.com.br/u/davi.as)\
**Post date:** [Maio 30, 2018, 1:08pm UTC](https://forum.casadocodigo.com.br/t/bind-spring-mvc/1055/1 "2018-05-30T13:08:58Z")

</div>

Olá, estou iniciando o livro Spring MVC, e construindo um projeto seguindo seus passos.

Porém, já no começo, na hora de chamar o método salvar, eu tenho erro quando meu método recebe parâmetro.

No meu caso ao invés de produto eu criei uma classe chamada Book.  
Então minha controller está mais ou menos assim:  
@Controller  
public class BooksController{  
@RequestMapping(/livros)  
public String save( **Book book** ){  
[…]  
}  
}

O problema acontece quando o método save tem parâmetro, no caso o Book. Sem parâmetro entra nele, mas obviamente não faz nada.  
O form e todas as configurações do spring estão iguais às do livro. E os inputs do form estão iguais aos do objeto.

Gostaria de saber se tem alguma outra configuração para fazer esse bind ou alguma dica do que eu poderia olhar.

Obrigado.

---

<div class="post-metadata">

**Author:** ![tonyblack\_si](https://avatars.discourse-cdn.com/v4/letter/t/4bbf92/32.png) [@tonyblack\_si](https://forum.casadocodigo.com.br/u/tonyblack_si)\
**Post date:** [Maio 30, 2018, 6:28pm UTC](https://forum.casadocodigo.com.br/t/bind-spring-mvc/1055/2 "2018-05-30T18:28:38Z")

</div>

Mostra a classe de controller completa e o form também. Acho que tenho uma ideia do que pode ser.

---

<div class="post-metadata">

**Author:** ![davi.as](https://avatars.discourse-cdn.com/v4/letter/d/a88e4f/32.png) [@davi.as](https://forum.casadocodigo.com.br/u/davi.as)\
**Post date:** [Maio 31, 2018, 12:24pm UTC](https://forum.casadocodigo.com.br/t/bind-spring-mvc/1055/3 "2018-05-31T12:24:59Z")

</div>

oi tonyblack, meu código está assim:

package com.minhaestante.controller;

import javax.transaction.Transactional;

import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.stereotype.Controller;  
import org.springframework.web.bind.annotation.RequestMapping;  
import org.springframework.web.bind.annotation.RequestMethod;

import com.minhaestante.model.Book;  
import com.minhaestante.dao.BookDAO;

@Controller  
@Transactional  
@RequestMapping("/livros")  
public class BookController {

```
@Autowired
BookDAO bookDAO;

@RequestMapping(method=RequestMethod.POST)
public String save(Book book) { //não consigo receber o livro por parâmetro
	//bookDAO.save(book);
	System.out.println("Cadastrando o livro");
	return "books/ok";
}

@RequestMapping("/form")
public String form() {
	return "books/form";
}

```

}

E meu form

\<%@ page language=“java” contentType=“text/html; charset=ISO-8859-1”  
pageEncoding=“ISO-8859-1”%\>

Cadastro de Livro 
 Título 

```
	<div>
		<label for="author">Autor</label>
		<input type="text" name="author" id="author"/>
	</div>
	
	<div>
		<label for="year">Ano</label>
		<input type="text" name="year" id="year"/>
	</div>
	
	<div>
		<label for="description">Descrição</label>
		<textarea rows="10" cols="20" name="description" id="description"></textarea>
	</div>
	
	<div>
		<label for="pages">Número de paginas</label>
		<input type="text" name="pages" id="pages"/>
	</div>
	
	<div>
		<label for="readYear">Ano em que Li</label>
		<input type="text" name="readYear" id="readYear"/>
	</div>
	
	<div>
		<label for="opinion">Minha Opinião</label>
		<textarea rows="10" cols="20" name="opinion" id="opinion"></textarea>
	</div>

	<div>
		<input type="submit" value="Cadastrar">
	</div>
</form>

```

---

<div class="post-metadata">

**Author:** ![davi.as](https://avatars.discourse-cdn.com/v4/letter/d/a88e4f/32.png) [@davi.as](https://forum.casadocodigo.com.br/u/davi.as)\
**Post date:** [Maio 31, 2018, 12:33pm UTC](https://forum.casadocodigo.com.br/t/bind-spring-mvc/1055/4 "2018-05-31T12:33:16Z")

</div>

tonyblack,

testei novamente aqui e o problema eram os dados que eu estava passando.

quando passei a colocar valores numéricos nos campos que seriam datas, entrou no código como esperado.

Obrigado.
