TagLib duplica com refresh [RESOLVIDO]

0 respostas
rogercafe

Consegui resolver o problema.
O que estava errado era o seguinte, eu não estava apagando o conteúdo do StringBuffer, foi só antes de inserir algum conteúdo no StringBuffer deletar todo seu conteúdo. :slight_smile:


Olá Pessoal seguinte, eu criei umas taglibs para facilitar algumas coisas aqui no meu sistema.
Umas delas são para gerar comboboxes (<select>)
OK… funcionou certinho, inclusive com AJAX, quando eu seleciono um item em uma outras são filtradas automáticamente, bem bacana, mas como nada é perfeito, está acontecendo um comportamento estranho, quando eu dou refresh na página a taglib está duplicando as combos, alguém já passou por isso ou sabe o que pode estar acontecendo?

Esse é o exemplo de uma taglib que eu criei.

@SuppressWarnings("serial")
public class ComboGruposEmpresas extends ComponenteBase {
	
	@Override
	public int doEndTag() thr

ows JspException {
		Contexto contexto = SessionUtil.getContexto(pageContext.getSession());
		
		super.sb.append("&lt;select class=\"comboGruposEmpresas\" onChange=\"onchangecombogrupoempresa(this);\"&gt;");
		
		super.InserirPrimeiroItem();
		
		
		GrupoEmpresaVO selecionado	= contexto.getGrupoSelecionado();
		
		for(int i = 0; i &lt contexto.getListaGruposEmpresas().size(); i++) {
			GrupoEmpresaVO grupo = (GrupoEmpresaVO) contexto.getListaGruposEmpresas().get(i);
			String option = "&lt;option ";
			if ((selecionado != null) && (selecionado.getId() == grupo.getId()))
				option += " selected ";
			option += "value=\""+grupo.getId()+"\"&gt;"+grupo.getNome()+"&lt;/option&gt;";
			
			super.sb.append(option);
		}
		
		super.sb.append("&lt;/select&gt;");
		super.write();
		
		return EVAL_PAGE;
	}


	@Override
	public int doStartTag() throws JspException {
		// TODO Auto-generated method stub
		return SKIP_BODY;
	}


	
	
	
}
Criado 18 de janeiro de 2007
Respostas 0
Participantes 1