Eu tenho dois selects um de “Matéria” outro de “Assunto” quando eu seleciono a matéria… tipo “Matemática” ele me traz a lista de assuntos relacionados a esta matéria… tipo subtração, soma, multiplicação…
O problema é que só funciona com o managedBean com @ReqestScoped se eu colocar @ViewScoped ou @SessionScoped ele da “EntityManager is closed”…
e eu preciso muito trabalhar com o @SessionScoped e não estou conseguindo!!!
e também no @RequestScoped quando submeto o formulario da o erro “Erro de validação: o valor não é válido”
<h:outputLabel value="* Matéria: " for="materia" />
<p:selectOneMenu id="materia" value="#{MbCadastroAtividade.materia}" effect="fold" requiredMessage="#{msgs.vazioAtividadeMateria}" required="true">
<f:selectItem itemLabel="SELECIONE" itemValue="" noSelectionOption="true"/>
<f:selectItems value="#{MbCadastroAtividade.materias}" style="font-size:11px;"/>
<p:ajax event="change" update="assunto" listener="#{MbCadastroAtividade.buscarAssuntos}"/>
</p:selectOneMenu>
<h:outputLabel value="* Assunto: " for="assunto" />
<p:selectOneMenu id="assunto" value="#{MbCadastroAtividade.atividade.assunto}" effect="fold" requiredMessage="#{msgs.vazioAtividadeAssunto}" required="true">
<f:selectItem itemLabel="SELECIONE" itemValue="" noSelectionOption="true"/>
<f:selectItems value="#{MbCadastroAtividade.assuntos}" />
</p:selectOneMenu>
no bean
....
private List<SelectItem> assuntos;
private List<SelectItem> materias;
.....
não sei se é isso mas eu tenho esse filtro aqui:
package br.com.sca.filtro;
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import br.com.sca.util.JPAUtil;
@WebFilter("/*")
public class EntityManagerFilter implements Filter {
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
try {
JPAUtil.beginTransaction();
chain.doFilter(request, response);
JPAUtil.commit();
} catch (Throwable e) {
e.printStackTrace();
JPAUtil.rollback();
throw new ServletException(e);
} finally {
JPAUtil.closeEntityManager();
}
}
public void destroy() {}
public void init(FilterConfig arg0) throws ServletException {}
}
pessoal me ajudem, por favor!!