Bom dia pessoal.
Gostaria de saber se alguem já passou por isso, eu já tentei procurar aqui pelo forum mas nao consegui nada que resolvesse o meu problema.
Tenho um xhtml (usando JSF 2.0), onde tenho uma tela que vai ser para passar os parametros para uma chamada de relatorio.
E tenho um xhtml padrao para chamar todos os relatorio, sendo assim gostaria de chamar atravez de um dialog, entao chamo atravez de um include o xhtml.
O grande problema está na hora de clicar no botao para chamar o meu bean, sendo que nao executa o action dele.
meu xhtml que tem a tela para filtro do relatorio:
<h:body>
<div id="tela" align="center">
<h:form id="form_rel">
<h:panelGrid columns="2">
<h:outputText value="Data/Hora: " />
<p:calendar locale="pt" value="#{telaAvaliacaoColaborador.data_filtro}" pattern="dd/MM/yyyy" />
<h:outputLabel id="latender" value="Usuário:"/>
<p:selectOneMenu id="sOMatender" value="#{telaAvaliacaoColaborador.cod_usuario}" height="100" required="true" >
<f:selectItem itemLabel="Todos Grupo(s)" itemValue="0" />
<f:selectItems id="fsAtender" value="#{telaAvaliacaoColaborador.listaUsuarios()}"
var="item" itemLabel="#{item.descricao}"
itemValue="#{item.id}" />
</p:selectOneMenu>
<p:commandButton value="Visualizar"
action="#{telaAvaliacaoColaborador.geraRelatorio()}"
icon="ui-icon-print"/>
</h:panelGrid>
</h:form>
</div>
</h:body>
Aqui tem o meu xhtml que chama por include
<div id="tela_ghu" align="center">
<p:layout id="ll_guposp" style="height: 500px; width: 770px">
<p:layoutUnit position="center" size="100" resizable="true" closable="true" collapsible="true" style="text-align: center">
<div id="formulario" align="left">
<h:form id="bcancelar">
<h:panelGrid columns="2">
<p:commandButton value=""
icon="ui-icon-document-b"
type="button"
title="Visualizar Relatório"
onclick="dlgAvaliacaoColb.show();"
update="dlgAvaliacao"/>
<h:outputText value="Relatório Avaliação Colaborador " />
</h:panelGrid>
</h:form>
<h:form id="fdil">
<p:dialog id="dlgAvaliacao" header="Relatório Avaliação Colaborador" modal="true" widgetVar="dlgAvaliacaoColb" dynamic="true" appendToBody="true" resizable="false">
<div id="tela_todos" align="left">
<form id="fm_parada">
<ui:include src="relTelaAvaliacaoColaborador.xhtml"/>
</form>
</div>
</p:dialog>
</h:form>
</div>
</p:layoutUnit>
</p:layout>
</div>
e aqui o meu bean que deveria ser executando quando clicado no botao para visualizar: telaAvaliacaoColaborador.geraRelatorio()
@ManagedBean
@SessionScoped
@ViewScoped
public class TelaAvaliacaoColaborador implements Serializable{
private ResultSet rs;
private Date data_filtro;
private Integer cod_usuario;
public Integer getCod_usuario() {
return cod_usuario;
}
public void setCod_usuario(Integer cod_usuario) {
this.cod_usuario = cod_usuario;
}
public Date getData_filtro() {
return data_filtro;
}
public void setData_filtro(Date data_filtro) {
this.data_filtro = data_filtro;
}
public ArrayList<listaCamposCombo> listaUsuarios() {
ArrayList<listaCamposCombo> listaItens = new ArrayList<listaCamposCombo>();
try {
rs = Conexao.Consulta("select gu.cod_usuario, gu.nome "
+ "from geral_usuarios gu "
+ "where gu.status = 1 "
+ "and gu.tipo_usuario_hd = 1 "
+ "order by gu.nome");
} catch (SQLException ex) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Erro ao Carregar Usuários", ex.getMessage()));
}
try {
while (rs.next()) {
int id = rs.getInt("cod_usuario");
String nome = rs.getString("nome");
listaCamposCombo list = new listaCamposCombo(id, nome);
listaItens.add(list);
}
} catch (SQLException ex) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Erro ao Carregar Usuários - Next", ex.getMessage()));
}
return listaItens;
}
public void geraRelatorio() throws JRException {
Map<String, Object> parametros = new HashMap<String, Object>();
URL reportURL = TelaAvaliacaoColaborador.class.getResource("/RelAvaliacaoColaborador.jasper");
}