Não utilize hibernate puro, mesmo com a annotations, utilize JPA
lembresse sempre desenvolva para uma especificação e nunca para uma implementação
da uma olhada no link abaixo
:)P
renato_ramos
não tendi mt não 'oO
vo explicar minha arquitetura…
Persistencia - Dao - Facade … exemplo q eu peguei de um livro xD
ms no livro não tinha OneToMany
agora eu to perdido …
mas é possivel fazer oq eu perguntei?.. mesmo nao sendo uma boa pratica?
rafaelk
Para resolver seu problema é só colocar OneToMany(cascade = CascadeType.ALL, mappedBy"atributoNaClasseFilho"), quando vc persistir o objeto questão todas as alternativas serão persistidas também.
Muitas vezes temos que esquecer disso, pois o mundo não é perfeito e ainda neste caso, estaremos usando uma anotação especificada.
renato_ramos
entao eu fiz assim…
QuestaoFacadequestaoFacade=(QuestaoFacade)context.getBean("questaoFacade");Questaoquestao=(Questao)context.getBean("questao");ArrayList<Alternativa>alternativaList=newArrayList<Alternativa>();intindex=listModelAlternativa.getSize();for(inti=0; i < index ; i++){
alternativaList.add((Alternativa)listModelAlternativa.getElementAt(i));}
questao.setDescQuestao(txtQuestao.getText());questao.setAlternativaCollection(alternativaList);
foreach not applicable for expression type … é oque aparece =/
renato_ramos
Consegui ^^’
era o cascade que estava errado… podem me xingar auhahuuah… o mais obvio…
vo postar o codigo derepent alguem precisa
publicvoidSalvarQuestao(){QuestaoFacadequestaoFacade=(QuestaoFacade)context.getBean("questaoFacade");Questaoquestao=(Questao)context.getBean("questao");ArrayList<Alternativa>alternativaList=newArrayList<Alternativa>();questao.setDescQuestao(txtQuestao.getText());questao.setAlternativaCollection(alternativaList);intindex=listModelAlternativa.getSize();for(inti=0;i<index;i++){Alternativaalternativa=newAlternativa();alternativa=(Alternativa)listModelAlternativa.getElementAt(i);alternativa.setIdQuestao(questao);alternativaList.add(alternativa);}try{questaoFacade.gravar(questao);JOptionPane.showMessageDialog(null,"Registro salvo com sucesso!");txtAlternativaQuestao.setText(null);txtQuestao.setText(null);}catch(Exceptione){JOptionPane.showMessageDialog(null,"Registro não foi salvo com sucesso!"+e.getMessage());txtAlternativaQuestao.setText(null);txtQuestao.setText(null);}}