Hibernate - Consulta com Criteria

Java

13/08/2014

Preciso fazer uma busca para retornar as mensagens de um determinado Helpdesk.

Assim traco tudo q tenho na tabela

@SuppressWarnings("unchecked")
public List<Mensagem> filtrados(MensagemFilter filtro) {
Session session = manager.unwrap(Session.class);
Criteria criteria = session.createCriteria(Mensagem.class);

return criteria.addOrder(Order.desc("id")).list();
}

Mais queria buscar so as mensagens de um ID especifico.
alguem da uma ajuda
Jardel Fuchter

Jardel Fuchter

Curtidas 0

Melhor post

Ronaldo Lanhellas

Ronaldo Lanhellas

15/08/2014

Bom, acho que você pode até simplificar as coisas, passando apenas o id do helpdesk no listener, da seguinte forma:

<f:event type="preRenderView"
            listener="#{pesquisaMensagemBean.pesquisar(cadastroHelpDeskBean.helpdesk.id)}" />


Ai dentro do seu método você faria o seguinte:

 public void pesquisar(Integer helpdeskid) {
         
            mensagemFiltrados = mensagens.filtrados(helpdeskid);
}


Segue o filtrados

@SuppressWarnings("unchecked")
public List<Mensagem> filtrados(Integer helpdeskid) {
Session session = manager.unwrap(Session.class);
Criteria criteria = session.createCriteria(Mensagem.class);
criteria.createAlias("helpdesk", "h");
criteria.add(Restrictions.eq("h.id",helpdeskid)); 
 
return criteria.addOrder(Order.desc("id")).list();
}
GOSTEI 1

Mais Respostas

Jardel Fuchter

Jardel Fuchter

13/08/2014

Preciso fazer uma busca para retornar as mensagens de um determinado Helpdesk.

Assim traco tudo q tenho na tabela


@SuppressWarnings("unchecked")
	public List<Mensagem> filtrados(MensagemFilter filtro) {
		Session session = manager.unwrap(Session.class);
		Criteria criteria = session.createCriteria(Mensagem.class);
							  
		return criteria.addOrder(Order.desc("id")).list();
	}



Mais queria buscar so as mensagens de um ID especifico.
alguem da uma ajuda

classe Mensagem


@Entity
@Table(name = "mensagem")
public class Mensagem implements Serializable{

	private static final long serialVersionUID = 1L;
	
	@Id
	@GeneratedValue
	@Column(name = "ID")
	private Long id;
	
	@Size(max = 1000)
	@Column(name = "DESCRICAO", length = 1000)
	@NotBlank
	private String descricao;
	
	
	@Column(name = "USUARIO_NOME")
	@NotBlank
	private String usuario_nome;
		
	@ManyToOne
	@JoinColumn(name = "HELPDESK_ID", nullable = false)  
    private HelpDesk helpdesk;



e classe Helpdesk

@Entity
@Table(name = "HelpDesk")
public class HelpDesk implements Serializable {

	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue
	@Column(name = "ID")
	private Long id;

	@ManyToOne
	@JoinColumn(name = "USUARIO_ID", nullable = false)
	private Usuario usuario;

	@Column(name = "DATA_INICIO", nullable = false)
	@Temporal(value = TemporalType.TIMESTAMP)
	private Date dataInicio = new Date();

	@Column(name = "DATA_FIM")
	@Temporal(value = TemporalType.TIMESTAMP)
	private Date dataFim;
	
	
	@Column(name = "DATA_ALTERACAO")
	@Temporal(value = TemporalType.TIMESTAMP)
	private Date dataAlteracao;

	@Column(name = "URGENCIA")
	@NotBlank
	private String urgencia;

	@Column(name = "STATUS")
	private String status = "Aguardando Atendimento";

	@Column(name = "PROBLEMA")
	@NotBlank
	private String problema;

	@Size(max = 1000)
	@Column(name = "DESCRICAO", length = 1000)
	private String descricao;

	@OneToMany(mappedBy = "helpdesk", cascade = CascadeType.ALL)
	private List<Mensagem> mensagem = new ArrayList<>();
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Bom, falta apenas você adicionar o que ID que deseja retornar:

criteria.add(Restrictions.eq("id","3"));
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

Mais o id tem q ser dinamico com as mensagem do helpdesk selecionado.
eu tentei assim e não deu

	criteria.add(Restrictions.eq("helpdesk_id", helpdesk.getId())); 
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Mais o id tem q ser dinamico com as mensagem do helpdesk selecionado.
eu tentei assim e não deu

	criteria.add(Restrictions.eq("helpdesk_id", helpdesk.getId())); 


Entendi, tente assim:

criteria.createAlias("helpdesk", "h");
criteria.add(Restrictions.eq("h.id", helpdesk.getId())); 
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

também não funcionou. aff
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Mas não funcionou porque trouxe tudo ou porque deu algum erro ?
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

deu erro.
2014-08-15 14:15:14,090 ERROR [com.jf.util.jsf.JsfExceptionHandler] Erro de sistema: /helpdesk/CasosAbertos.xhtml @111,51 listener="#{pesquisaMensagemBean.pesquisar}": java.lang.NullPointerException
javax.el.ELException: /helpdesk/CasosAbertos.xhtml @111,51 listener="#{pesquisaMensagemBean.pesquisar}": java.lang.NullPointerException
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:111)
	at com.sun.faces.facelets.tag.jsf.core.DeclarativeSystemEventListener.processEvent(EventHandler.java:128)
	at javax.faces.component.UIComponent$ComponentSystemEventListenerAdapter.processEvent(UIComponent.java:2486)
	at javax.faces.event.SystemEvent.processListener(SystemEvent.java:106)
	at com.sun.faces.application.ApplicationImpl.processListeners(ApplicationImpl.java:2163)
	at com.sun.faces.application.ApplicationImpl.invokeComponentListenersFor(ApplicationImpl.java:2111)
	at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:289)
	at com.sun.faces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:247)
	at org.jboss.weld.environment.servlet.jsf.ForwardingApplication.publishEvent(ForwardingApplication.java:287)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:183)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NullPointerException
	at com.jf.repository.Mensagens.filtrados(Mensagens.java:66)
	at com.jf.repository.Mensagens$Proxy$_$$_WeldSubclass.filtrados(Mensagens$Proxy$_$$_WeldSubclass.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.jboss.weld.interceptor.proxy.SimpleInterceptionChain.invokeNextInterceptor(SimpleInterceptionChain.java:85)
	at org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.executeInterception(InterceptorMethodHandler.java:112)
	at org.jboss.weld.interceptor.proxy.InterceptorMethodHandler.invoke(InterceptorMethodHandler.java:88)
	at org.jboss.weld.bean.proxy.CombinedInterceptorAndDecoratorStackMethodHandler.invoke(CombinedInterceptorAndDecoratorStackMethodHandler.java:55)
	at com.jf.repository.Mensagens$Proxy$_$$_WeldSubclass.filtrados(Mensagens$Proxy$_$$_WeldSubclass.java)
	at com.jf.controller.PesquisaMensagemBean.pesquisar(PesquisaMensagemBean.java:47)
	at com.jf.controller.PesquisaMensagemBean$Proxy$_$$_WeldClientProxy.pesquisar(PesquisaMensagemBean$Proxy$_$$_WeldClientProxy.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.el.parser.AstValue.invoke(AstValue.java:277)
	at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:273)
	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:39)
	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
	... 59 more
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Poste seu método pesquisar do ManagedBean, provavelmente seu objeto "helpDesk" está nulo, já verificou isso ?
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

@Named
@ViewScoped
public class PesquisaMensagemBean implements Serializable {

	private static final long serialVersionUID = 1L;

	
	@Inject
	private Mensagens mensagens;
	
	private MensagemFilter filtro;
	private HelpDesk helpdesk;
	private List<Mensagem> mensagemFiltrados;
	private Mensagem mensagemSelecionado;
		


	public PesquisaMensagemBean() {
		filtro = new MensagemFilter();
				
	}
	
	public void excluir() {
		mensagens.remover(mensagemSelecionado);
        mensagemFiltrados.remove(mensagemSelecionado);
    
		FacesUtil.addInfoMessage("Mensagem #"+ mensagemSelecionado.getId() + " de " + mensagemSelecionado.getUsuario_nome()+ ", excluído com sucesso.");
	}	
	
	public void pesquisar() {
		
		   	mensagemFiltrados = mensagens.filtrados(filtro);
}
			
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Bom, imagino que você tenha mudado o método "filtrados" para o seguinte:

@SuppressWarnings("unchecked")
public List<Mensagem> filtrados(MensagemFilter filtro) {
Session session = manager.unwrap(Session.class);
Criteria criteria = session.createCriteria(Mensagem.class);
criteria.createAlias("helpdesk", "h");
criteria.add(Restrictions.eq("h.id", helpdesk.getId())); 

return criteria.addOrder(Order.desc("id")).list();
}


Não sei se onde você está pegando o objeto "helpdesk" mas verifique (depure) se ele não está nulo antes tentar realizar o "getId()".
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Já que você tem um objeto HelpDesk no managedBean, pode passar ele como parâmetro para o método filtrados.
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

o meu xhtml ta assim

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui" xmlns:o="http://omnifaces.org/ui">

	<h:form id="FrmChamadas">



		<p:dataTable id="ChamadaTable"
			value="#{pesquisaHelpDeskBean.helpDeskFiltrados}" var="helpdesk"
			style="margin-top: 20px; font-size:12px"
			emptyMessage="Nenhuma Solicitação Aberta." rows="50"
			scrollable="true" scrollHeight="320" paginator="true"
			paginatorAlwaysVisible="true" paginatorPosition="bottom"
			rowKey="#{helpdesk.id}" loadingMessage="Carregando..."
			selectionMode="single" selection="#{cadastroHelpDeskBean.helpdesk}"
			rowStyleClass="#{helpdesk.urgencia eq 'Baixa' ? 'baixa' :
									  helpdesk.urgencia eq 'Média' ? 'media' :
									 helpdesk.urgencia eq 'Alta' ? 'alta'
									: null}">

			<p:ajax event="rowSelect" update=":TabView:FrmChamadas:dialog"
				oncomplete="completo.show()">

			</p:ajax>

			<p:column headerText="N°" style="width:30px">
				<h:outputText value="#{helpdesk.id}" />
			</p:column>

			<p:column headerText="Status" style="width:160px">
				<h:outputText value="#{helpdesk.status}" />
			</p:column>

			<p:column headerText="Solicitante" style="width:160px">
				<h:outputText value="#{helpdesk.usuario.nome}" />
			</p:column>

			<p:column headerText="Assunto/Problema">
				<h:outputText value="#{helpdesk.problema}" />
			</p:column>

			<p:column headerText="Departamento" style="width:260px">
				<h:outputText value="#{helpdesk.usuario.local.local}" />
			</p:column>

			<p:column headerText="Urgência" style="width:50px">
				<h:outputText value="#{helpdesk.urgencia}" />
			</p:column>

			<p:column headerText="Data/Hora - Abertura" style="width:130px">
				<h:outputText value="#{helpdesk.dataInicio}">
					<f:convertDateTime pattern="dd/MM/yyyy - HH:mm:ss"
						timeZone="GMT-03:00" />
				</h:outputText>
			</p:column>


			<p:column headerText="Opções" style="text-align: center; width:85px">

				<p:button outcome="/helpdesk/CadastroCaso" style="font-size: 16px;"
					icon="fa fa-pencil-square-o" title="Editar Solicitação">
					<f:param name="helpdesk" value="#{helpdesk.id}" />
				</p:button>

				<p:commandButton icon="fa fa-trash-o" title="Excluir Solicitação"
					style="font-size: 16px;" oncomplete="confirmacaoExclusao.show()"
					process="@this"
					update=":TabView:FrmChamadas:confirmacaoExclusaoDialog">
					<f:setPropertyActionListener
						target="#{pesquisaHelpDeskBean.helpDeskSelecionado}"
						value="#" />
				</p:commandButton>

			</p:column>



		</p:dataTable>

		<p:confirmDialog header="Exclusão de casos"
			message="Tem certeza que deseja excluir o Chamado #{pesquisaHelpDeskBean.helpDeskSelecionado.id}?"
			widgetVar="confirmacaoExclusao" id="confirmacaoExclusaoDialog">
			<p:button value="Não"
				onclick="confirmacaoExclusao.hide(); return false;" />
			<p:commandButton value="Sim" oncomplete="confirmacaoExclusao.hide();"
				action="#{pesquisaHelpDeskBean.excluir}" process="@this"
				update=":TabView:FrmChamadas:ChamadaTable,:TabView:FrmChamadasEncerradas:ChamadaTable" />
		</p:confirmDialog>















		<!-- Inicio Dialog -->


		<f:event type="preRenderView"
			listener="#{pesquisaMensagemBean.pesquisar}" />

		<p:dialog id="dialog"
			header="Chamado ##{cadastroHelpDeskBean.helpdesk.id}"
			position="center" widgetVar="completo" modal="true" resizable="false"
			height="500px" width="90%" showEffect="fade" hideEffect="fade">





			<p:panelGrid columns="2" id="painelGeral" styleClass="semBorda"
				style="width: 100%;" columnClasses="alignTop,alignTop">

				<p:panelGrid columns="2" id="dadosPainel" styleClass="semBorda"
					columnClasses="cssColumn9,alignTop"
					style="width:700px; height:auto;">

					<h:outputText value="Status:" />
					<p:selectOneMenu id="status"
						value="#{cadastroHelpDeskBean.helpdesk.status}">

						<f:selectItem itemLabel="Aguardando Atendimento"
							itemValue="Aguardando Atendimento" />
						<f:selectItem itemLabel="Em Atendimento"
							itemValue="Em Atendimento" />
						<f:selectItem itemLabel="Em Teste" itemValue="Em Teste" />
						<f:selectItem itemLabel="Indisponível p/ Atendimento"
							itemValue="Indisponível p/ Atendimento" />

					</p:selectOneMenu>


					<h:outputText value="Assunto/Problema:" />
					<h:outputText size="78" maxlength="80" disabled="true"
						value="#{cadastroHelpDeskBean.helpdesk.problema}" />

					<h:outputText value="Descrição:" />
					<h:outputText escape="false"
						value="#{cadastroHelpDeskBean.helpdesk.descricao}" />





				</p:panelGrid>








				<p:panelGrid columns="2" id="PainelDetalhes"
					columnClasses="cssColumn9,alignTop"
					style="width:450px; height:auto;">


					<h:outputText value="Solicitante:" />
					<h:outputText value="#{cadastroHelpDeskBean.helpdesk.usuario.nome}" />
					<h:outputText value="Telefone:" />
					<h:outputText
						value="#{cadastroHelpDeskBean.helpdesk.usuario.telefone}" />
					<h:outputText value="Email:" />
					<h:outputText
						value="#{cadastroHelpDeskBean.helpdesk.usuario.email}" />
					<h:outputText value="Criado em:" />
					<h:outputText value="#{cadastroHelpDeskBean.helpdesk.dataInicio}">
						<f:convertDateTime pattern="dd/MM/yyyy - HH:mm:ss"
							timeZone="GMT-03:00" />
					</h:outputText>
					<h:outputText value="Atualizado em:" />
					<h:outputText
						value="#{cadastroHelpDeskBean.helpdesk.dataAlteracao}">
						<f:convertDateTime pattern="dd/MM/yyyy - HH:mm:ss"
							timeZone="GMT-03:00" />
					</h:outputText>


				</p:panelGrid>



			</p:panelGrid>

			<h:outputText value="Comentários"
				style="font-size: 25px;  font-weight: bold;" />

			<p:dataGrid value="#{pesquisaMensagemBean.mensagemFiltrados}"
				columns="1" var="mensagem" emptyMessage="Nenhum comentário">


				<p:panel>

					<f:facet name="header">
						<p:graphicImage url="/resources/images/fa-user.png" height="20px" /> #{mensagem.usuario_nome}
                    </f:facet>

					<h:panelGrid columns="1" style="width:100%" cellpadding="5">

						<h:outputText value="#{mensagem.descricao}" />

						<h:outputText value="#{mensagem.dataEnvio}">
							<f:convertDateTime pattern="dd/MM/yyyy - HH:mm:ss"
								timeZone="GMT-03:00" />
						</h:outputText>


					</h:panelGrid>
				</p:panel>



			</p:dataGrid>


<p:se

			<p:panelGrid columns="3" id="btnAberto" columnClasses="cssColumn8"
				styleClass="semBorda" style="width: 300px; text-align: right; ">

				<p:commandButton value="Encerrar Solicitação" id="botaofechar2"
					icon="fa fa-times-circle"
					style="height: 40px; width:200px; font-size: 16px;"
					action="#{cadastroHelpDeskBean.fechar()}"
					update=":TabView:FrmChamadasEncerradas:ChamadaTable,:TabView:FrmChamadas:ChamadaTable"
					oncomplete="completo.hide()" />

				<p:commandButton value="Salvar" id="botaoSalvar"
					style="height: 40px; font-size: 16px;" icon="fa fa-floppy-o"
					action="#{cadastroHelpDeskBean.salvar()}"
					update=":TabView:FrmChamadasEncerradas:ChamadaTable,:TabView:FrmChamadas:ChamadaTable"
					oncomplete="completo.hide()" />

				<p:commandButton value="Cancelar" oncomplete="completo.hide()"
					style="height: 40px; font-size: 16px;" icon="fa fa-minus-circle" />


			</p:panelGrid>



		</p:dialog>
	</h:form>

</ui:composition>
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

aham, agora deu outro erro, que estranho.

javax.el.ELException: /helpdesk/CasosAbertos.xhtml @110,94 listener="#{pesquisaMensagemBean.pesquisar(cadastroHelpDeskBean.helpdesk.id)}": java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:111)
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

É porque o campo "id" do seu objeto Helpdesk é do tipo "Long" e não "Integer". Basta você mudar os tipos dos parâmetros do método pesquisar e filtrados de "Integer" para "Long"
GOSTEI 0
Jardel Fuchter

Jardel Fuchter

13/08/2014

Ok deu certo Ronaldo, muito obrigado pela ajuda!! abraço
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

13/08/2014

Que bom que deu certo, boa sorte ai !
GOSTEI 0
POSTAR