Javafree
Página Inicial do Fórum > Frameworks, APIs e IDE's

Ajuda Bean Validation



Criar novo tópico   Responder tópico


  1. leo1107
    Posts:2


    Comment Arrow

    Publicado em: 04/09/2016 11:46:47

    Por favor, alguém me ajude, não sei mais o que fazer, rsrs... Estou aprendendo Java através da apostila da Caelum. Atualmente estou na parte de Spring MVC.

    Cheguei no capítulo de Bean Validation (https://www.caelum.com.br/apostila-java-web/spring-mvc/#11-12-exercicios-validando-tarefas).

    Estou seguindo exatamente o que a apostila diz para validar um campo nulo ou menor que 5 caracteres, porém não funciona de jeito nenhum, o formulário ignora a validação e salva o registro nulo no banco de dados. A única diferença é que não usei as libs do curso, baixei através do Maven.

    Segue trechos principais das classes DTO e Controller:

    # TAREFA DTO

    package br.com.tarefas.dto;

    import javax.validation.constraints.NotNull;
    import javax.validation.constraints.Size;

    public class Tarefa {

    private Long id;

    @NotNull @Size(min=5)
    private String descricao;

    (...)

    # TAREFA CONTROLLER

    package br.com.tarefas.controller;

    import javax.validation.Valid;

    import org.springframework.stereotype.Controller;
    import org.springframework.validation.BindingResult;
    import org.springframework.web.bind.annotation.RequestMapping;

    import br.com.tarefas.dao.TarefaDao;
    import br.com.tarefas.dto.Tarefa;

    @Controller
    public class TarefasController {

    @RequestMapping(''novaTarefa'')
    public String form() {
    return "tarefa/formulario";
    }

    @RequestMapping(''adicionaTarefa'')
    public String adiciona(@Valid Tarefa tarefa, BindingResult result) {

    if (result.hasFieldErrors(''descricao'')) {
    return "tarefa/formulario";
    }

    TarefaDao dao = new TarefaDao();
    dao.adiciona(tarefa);
    return "tarefa/adicionada";
    }

    }



  1. Relacionados