Olá, estou tendo um problema com JSF e gostaria de saber como solucionar isso…
A duvida é a seguinte…
Imagine a seguinte situação…
Tenho uma aplicação que utiliza JSF com JPA (Hibernate) e Mysql como DB,
Tenho duas Classes mapeadas no Hibernate : (segue ex das classes abaixo)
Aluno
int id; (pk)
String nome;
Turma turma_id; (fk = Turma.id)
Turma
int id;
String nome;
Tbm tenho dois ManageBeans : (segue abaixo os ex dos metodos utilizados)
TurmaBean
- getTurmas() : ArrayList
AlunoBean
- novoAluno() : String
E por fim tenho uma view que foi criada para salvar um novo aluno (segue abaixo o problema)
- O problema é o seguinte, eu criei o formulario jsf para inserção de um novo aluno no banco de dados, so que acontece o seguinte erro: [color=darkred]Diz que 1 não pode ser convertido para Null[/color], algo assim. (no campo que se referencia ao atributo turma do aluno).
-Segue o trecho de codigo que tenho em minha view.
View novoAluno.xhtml
<h:form>
<h:outputLabel value="Nome" />
<h:inputText value="#{alunoBean.aluno.nome}" />
[color=red]<h:outputLabel value="Turma" />
<h:selectOneMenu value="#{alunoBean.aluno.turma}">
<f:selectItems value="#{turmaBean.turmas}" var="t" itemValue="#{t.id}" itemLabel="#{t.nome}" />
</h:selectOneMenu>[/color]
<h:commandButton value="Salvar Aluno" action="#{alunoBean.novoAluno}" />
</h:form>
- Imagino o seguinte, como o atributo turma, faz refencia a classe Turma, pode ter algo ai que não estou sabendo fazer, li algo sobre a criação de um converter, mais não sei como fazer neste caso.
#### Alguem sabe como resolvo isso, Obrigado ####