Problema com jsf

5 respostas
dahenz

Pessoal, estou tentando fazem dois dias fazer funcionar um scrollabledatatable em um modalPanel…

Quando clico no botão buscar, devem ser filtradas as informações do grid… ele até começa a fazer isso… mas não termina, ele renderiza mas fica com as colunas mescladas, e o facet some, normal, mas deveriam voltar ao termino da renderização…

Alguém sabe como resolver isso… a tela é muito grande… não posso começar do zero… tenho que resolver…

Obrigado a todos…

5 Respostas

hudson.negao

posta o codigo ai pra jente pode da uma olhada e tentar te ajudar
:smiley:

dahenz
<a4j:commandButton value      = "+" 
                     					action     = "#{MetaVigenciaMB.listarEventos}"
                     					oncomplete = "javascript:Richfaces.showModalPanel('pnlEventos');"/>

Botao de chamada do panel....

<rich:modalPanel id        = "pnlEventos" 	
							 width     = "600"
							 height    = "310"
							 minWidth  = "600"
							 minHeight = "310"
							 top       = "100">							 			   

			   <f:facet name = "header">
			      <h:outputText value = ".::Consultar eventos" />
			   </f:facet>			
			   
			   <h:panelGrid columns = "3">
			      <h:outputText value = "Digite a descrição para busca:"/>
			      
			      <h:inputText id         = "descricaoConsulta" 
			      			   styleClass = "inputTextSmall"
			      			   value      = "#{MetaVigenciaMB.consultaDescricaoEvento}"/>
			      			   			      
			         <a4j:commandButton value      = "Buscar" 
			      					    styleClass = "specialButtons" >
			      		
			      		<a4j:support id       = "rendererTableConsulta" 
								     event    = "oncomplete"
									 action   = "#{MetaVigenciaMB.filtrarEvento}"		      
									 reRender = "eventoTable" />
									 						
			      	 </a4j:commandButton>				    					  

			   </h:panelGrid>
			   			   
			   <rich:separator id     = "sp13" 
				   			   height = "2" 
							   style  = "padding:10px 0"/>						
			   							  
			   <center>
  		          <h:panelGrid columns = "2">
			      					 
			         <a4j:commandButton value      = "Ok" 
			         					styleClass = "specialButtons"
			       					    onclick    = "javascript:Richfaces.hideModalPanel('pnlEventos')"/>			   			   

			         <a4j:commandButton value      = "Cancelar" 
			         					styleClass = "specialButtons"
			       					    onclick    = "javascript:Richfaces.hideModalPanel('pnlEventos')"/>			   			   

			      </h:panelGrid>			      
			    </center>				   
			    
			    <rich:spacer id     = "spc9088" 
			                 height = "10"/>			   
			   			
			   <rich:separator id         = "sp1352" 
			 	  			   styleClass = "defaultSeparator" />		
			 	  			   
			   <!-- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX PANEL TABLE EVENTOS XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -->			

				  <rich:spacer id     = "sp3433" 
				               height = "10" />
				  
				  <rich:scrollableDataTable width          = "585" 
				  							height         = "155"
				  							id             = "eventoTable"
				  							rowKeyVar      = "rkv"
				  							sortMode       = "single"
				  							rows           = "0"
				  							frozenColCount = "1"
				  							binding        = "#{tblEventosDisponiveis}"
				  							value          = "#{MetaVigenciaMB.eventos}"
				  							var            = "eventos">
				     
				     <rich:column id="idColuna" sortExpression="#{eventos.id}">
				        <f:facet name="header">
				           <h:outputText value="Código" />
				        </f:facet>
				     
				        <h:outputText id = "idEvento"
				                      value = "#{eventos.id}" />
				     </rich:column>
				     
				     <rich:column id="descricaoColuna" width="450" sortExpression="#{eventos.descricao}">
				        <f:facet name="header">
				           <h:column>
				              <h:outputText value="Descrição" />
				           </h:column>
				        </f:facet>
				        
				        <h:outputText id    = "descricaoEvento"
				                      value = "#{eventos.descricao}"   />
				        
				     </rich:column>
				  </rich:scrollableDataTable>
				  
			</rich:modalPanel>
Panel ^
public class MetaVigenciaMB {
	
	private String idEvento;
	private String descricaoEvento;
	private String consultaDescricaoEvento;
	private String dataVigencia;
	private String valorPremio;
	private String pontuacao;
	private String pesoEvento;
	private String pesoMeta;
	private String tolerancia;
	private String metaValor;
	private String percentualBonificacao;
	private String valorBonus;	
	private List<ImovelBean> imoveisDisponiveis;
	private HtmlScrollableDataTable tblImoveisDisponiveis;
	private HtmlScrollableDataTable tblEventosDisponiveis;
	private List<EventoBean> eventos;		
		
	public void filtrarEvento(){
		
		EventoDAO eventoDAO = new EventoDAO();
		EventoBean eventoBean = new EventoBean();
				
		eventoBean.setDescricao(getConsultaDescricaoEvento());
		
		setEventos(eventoDAO.filtrarEventosConsulta(eventoBean));
		
	}
	
	public String sair(){
		
		return "success";
		
	}
	
	public void listarEventos(){
		
		EventoDAO eventoDAO = new EventoDAO();
		eventos = eventoDAO.listarEventos();
		
	}
	
	public void listarImoveis(){
		
		ImovelDAO imovelDAO = new ImovelDAO();
		
		imoveisDisponiveis = imovelDAO.getImoveis();
		
	}
	
	public String autenticarUsuario(){
								
		listarImoveis();
		listarEventos();		
		
		return "success";
		
	}		

	public List<ImovelBean> getImoveisDisponiveis() {
		return imoveisDisponiveis;
	}

	public void setImoveisDisponiveis(List<ImovelBean> imoveisDisponiveis) {
		this.imoveisDisponiveis = imoveisDisponiveis;
	}

	public HtmlScrollableDataTable getTblImoveisDisponiveis() {
		return tblImoveisDisponiveis;
	}

	public void setTblImoveisDisponiveis(
			HtmlScrollableDataTable tblImoveisDisponiveis) {
		this.tblImoveisDisponiveis = tblImoveisDisponiveis;
	}

	public List<EventoBean> getEventos() {
		return eventos;
	}

	public void setEventos(List<EventoBean> eventos) {
		this.eventos = eventos;
	}

	public String getDescricaoEvento() {
		return descricaoEvento;
	}

	public void setDescricaoEvento(String descricaoEvento) {
		this.descricaoEvento = descricaoEvento;
	}

	public String getDataVigencia() {
		return dataVigencia;
	}

	public void setDataVigencia(String dataVigencia) {
		this.dataVigencia = dataVigencia;
	}

	public String getValorPremio() {
		return valorPremio;
	}

	public void setValorPremio(String valorPremio) {
		this.valorPremio = valorPremio;
	}

	public String getPontuacao() {
		return pontuacao;
	}

	public void setPontuacao(String pontuacao) {
		this.pontuacao = pontuacao;
	}

	public String getPesoEvento() {
		return pesoEvento;
	}

	public void setPesoEvento(String pesoEvento) {
		this.pesoEvento = pesoEvento;
	}

	public String getPesoMeta() {
		return pesoMeta;
	}

	public void setPesoMeta(String pesoMeta) {
		this.pesoMeta = pesoMeta;
	}

	public String getTolerancia() {
		return tolerancia;
	}

	public void setTolerancia(String tolerancia) {
		this.tolerancia = tolerancia;
	}

	public String getMetaValor() {
		return metaValor;
	}

	public void setMetaValor(String metaValor) {
		this.metaValor = metaValor;
	}

	public String getPercentualBonificacao() {
		return percentualBonificacao;
	}

	public void setPercentualBonificacao(String percentualBonificacao) {
		this.percentualBonificacao = percentualBonificacao;
	}

	public String getValorBonus() {
		return valorBonus;
	}

	public void setValorBonus(String valorBonus) {
		this.valorBonus = valorBonus;
	}

	public String getIdEvento() {
		return idEvento;
	}

	public void setIdEvento(String idEvento) {
		this.idEvento = idEvento;
	}

	public HtmlScrollableDataTable getTblEventosDisponiveis() {
		return tblEventosDisponiveis;
	}

	public void setTblEventosDisponiveis(
			HtmlScrollableDataTable tblEventosDisponiveis) {
		this.tblEventosDisponiveis = tblEventosDisponiveis;
	}

	public String getConsultaDescricaoEvento() {
		return consultaDescricaoEvento;
	}

	public void setConsultaDescricaoEvento(String consultaDescricaoEvento) {
		this.consultaDescricaoEvento = consultaDescricaoEvento;
	}


}

^ MannagedBean......

Cara o jsf está ficando stressante..... Me ajuda

dahenz

Descobri o problema…

Eu tenho incluído a tag <link rel="StyleSheet" type="text/css" href="css/default.css" media="screen">

Nessa tag eu aponto o arquivo css que utilizo na configuração da minha página…

Quando tiro essa tag tudo funciona perfeitamente, mas aí tem um problema… tenho que fazer na mão sempre as configurações dos meus campos de formulário…

É assim mesmo que se comporta o JSF??? Todos fazem individualmente essas configurações para cada campo???

Qual seria a solução???

Obrigado…

furutani

CSS é uma coisa JSF é outra coisa.
Provavelmente é algum atributo do CSS que está nesse default.css que está estragando seu layout.
Veja se um webdesiner pode te ajudar.

dahenz

Olá Furutani… Eu copiei todo o conteúdo do css para o arquivo jsp em questão dentro das tags , funcionou tranquilo… estranho…

Vou procurar descobrir… Abraço

Criado 17 de dezembro de 2008
Ultima resposta 18 de dez. de 2008
Respostas 5
Participantes 3