Bom, pelo controller do spring MVC eu passo o objeto classB e uma lista de classA para o form e monto uma combo utilizando a lista de classA com tagLig do Spring,
quando meu controlador vai me devolver o objeto classB montado ele da erro, por que no lugar do objeto classA ele recebe o código do objeto selecionado.
Minha questão é, qual a solução para esse caso utilizando o Spring MVC ? Alguém tem algum exemplo ?
Obs2: “classbobj” é o obj passado do controller para o formulário ModelMap m.addAttribute(“classbobj”, new classB());
Obs1: “listclassA” é uma lista de objetos que foi passada do controller pelo ModelMap m.addAttribute(“listclassA”, daoClassA.getList());
Obrigado desde já.
M
MGSAHAO
Cara você usa hibernate ? Não estou conseguindo entender direito o que você quer,mas se eu entendi, o correto é você passar assim
<form:select path=“classobj.aa.codigodoobjeto”>
onde o código do objeto seja o id(pk) dele, até pq o combo não te retorna um objeto ele só te retorna um código e através desse código você acessa o objeto.
W
wakko
MGSAHAO:
Cara você usa hibernate ? Não estou conseguindo entender direito o que você quer,mas se eu entendi, o correto é você passar assim
<form:select path=“classobj.aa.codigodoobjeto”>
onde o código do objeto seja o id(pk) dele, até pq o combo não te retorna um objeto ele só te retorna um código e através desse código você acessa o objeto.
Então, eu to usando JPA …
Assim, o que ta rolando é o seguinte …
Quando eu submeto o form, o spring ta pegando o o código do objeto que foi selecionado na “combo” e tentando colocar no classB.aa … Só que o classA.aa espera um objeto do tipo classA … Ai o spring da uma exception de type missmatch.
Eu vi uma forma de resolver isso com um “org.springframework.format” você conhece algo ?
M
MGSAHAO
Só que cara, você tem um relacionamento entre os dois objetos, que seria uma fk certo ? Quando você for salvar o ClassB ele ele precisa apenas dessa fk da classe A, por isso você tem que por do jeito que eu te falei no path do select.
W
wakko
Eu entendi o que você ta dizendo …
Que eu tenho que passar para o meu controller o código da fk, para receber no controller o código e buscar o objeto pelo código e setar no objeto que é composto por essa classe …
O que eu gostaria de saber é se o spring não consegue receber esse valor interiro (fk) e fazer a busca e já injetar o obj … Da uma olhadinha nesse tuto … É exatamente meu contexto …
Cara… sinceramente não sei qual a lógica de você querer isso, posta seu model ai para eu ver, você deve ter um joinColum no campo que faz referencia a outra classe, você deve ter mapeado pela fk, quando você submeter esse form o objeto ClasseA ja vai ter o objeto classeB, você não precisa buscar o objeto ja esta “carregado”. Quando você der um classB.getClassA() você vai ter o objeto.
W
wakko
O contexto que estou trabalhando é para salvar o objeto com sua dependencia (classA) … Assim que chegar em casa posto como está feito …