Oi pessoal!
Estou seguindo a apostila fj-28 e empaquei no item 7.10, pois eu crio a lógica edita() e na mesma classe é criado o método edita() de retornar o id do produto, aí dá problema, estou recebendo o erro “There are two rules that matches the uri”, igual a este tópico: http://www.guj.com.br/posts/list/150084.java
Eu entendi que o método void é a lógica para chamar a página jsp chamada edita.jsp, mas o outro método tb se chama edita(), é ai que recebo o erro.
Deixei o projeto conforme está na apostila mas não consegui resolver essa questão, pelo tópico existente eu não entendi como o cara resolveu.
Putz! Descobri o que era, eu estava colocando no método de recuperação do ID do filme como Integer e só pode ser Long,o VRaptor não aceita o método edita() como Integer nem na classe ProdutoDAO e nem em ProdutoController.
Agora tô resolvendo o campo sinopse que está em “TextArea” no form e o campo gênero que está como DropDown, ambos não estão sendo carregados pelo método edita().
Abraço!
Guevara
Resolvi!
A caixa de seleção Dropdown da página edita.jsp ficou assim:
Isso evita os caracteres estranhos ao gravar e recuperar dados do banco.
Fica ai a dica pra quem precisar.
Abraço!
Lucas_Cavalcanti
Guevara:
Putz! Descobri o que era, eu estava colocando no método de recuperação do ID do filme como Integer e só pode ser Long,o VRaptor não aceita o método edita() como Integer nem na classe ProdutoDAO e nem em ProdutoController.
o VRaptor aceita sim o edita como Integer… o que provavelmente estava acontecendo é que vc digitou errado o id:
@Path("/produtos/{id}")publicvoidedita(Integerid){...}// isso funciona... se vc escreveu o id como Id ou ID ou iD não funcionaria