atualaizaçao dinamica @

ola pessoal,

tenho q fazer 2 atuliazaçoes dinamicas em uma pagina jsp. Uma consegui fazer sem mto stress; mas a segunda ta acontecendo um problema, quando seleciono a opção na combo select, aparece um grupo de chekbox(que eh o q tem q acontecer), no mesmo lugar da combo (apagando), e gostaria q o checkbox aparecesse em baixo. para isso estou usando ajax. seguem os codigos relacionados:

Pagina principal:

<form>
<table>
	<tr>
		<td>Selecione a categoria do produto:</td>
		<td><select name="catproduto" id="catproduto"
			onChange="getproduto(this.value)">
			<%
				CategoriaProduto produto = null;
				out.println("<OPTION SELECTED VALUE= \"Selecionar\">Selecionar");
				while (it.hasNext()) {
					produto = (CategoriaProduto) it.next();
					out.println("<OPTION VALUE=\"" + produto.getId() + "\">"
							+ produto.getNome());
					//  System.out.println(mun.getId()+"-"+mun.getNome());   
				}
			%>
		</select>
<!--		ate aki tudo bm, aparece a segunda chek box ok-->
	  </td>
	</tr>
	<tr>
		<td height="26">
		<div align="right"><font color="green">*</font></div>
		</td>
		<td width="321">
		<div id="txtHint"></div>
		</td>
	</tr>
	<tr>

		<td width="26">checkbox
		</td>
		<td width="321">
		<div id="txtHint1">2222222222</div>
		</td>
	</tr>
	
</table>

<table>

	
	
</table>

 
<table>
	
</table>

<input type="submit">

</form>

codigo primeira atualizaçao:

response
			.getWriter()
			.write(
					"<select name=\"comboproduto\" id=\"comboproduto\" onChange=\"gettproduto(this.value)\" >"
							+ "<OPTION SELECTED VALUE= \"Selecionar\">Selecionar");

	//aqui passo o valor para a proxima pagina
	
	// index for the selection in our master list 
	String index = request.getParameter("q");//"5";

	ProdutoDAO bb = df.getProdutoDAO();

	Collection<Entity> produtos = null;
	Iterator it = null;
	produtos = bb.listLight();
	it = produtos.iterator();
	Produto produto = null;

	while (it.hasNext()) {

		produto = (Produto) it.next();
		if (produto.getCategoriaProduto().toString().equals(index)) {
			// comparaçao de strings se da pelo metodo equals
			response.getWriter().write(
					"<OPTION VALUE=\"" + produto.getId() + "\">"
							+ produto.getNome());
			//  System.out.println(mun.getId()+"-"+mun.getNome());   
		}
	}

e a pagina do checkbox, que aparece apagando a combo q acabou de ser gerada


Iterator it = null;
	Iterator itf = null;

	produtos = bb.listLight();

	TipoProduto produto = null;
	TipoProduto produtof = null;

	//produtosf = ((Fornecedor)session.getAttribute("fornecedor")).getTipoProdutos();
	produtosf = f.getTipoProdutos();

	it = produtos.iterator();
	itf = produtosf.iterator();
	out.print("<div id = tpro>");
	while (it.hasNext()) {
		produto = (TipoProduto) it.next();
		
		// comparar os produtos possiveis com os do fornecedor

		while (itf.hasNext()) {

			produtof = (TipoProduto) itf.next();

			if (produto.getProduto().getId() == Long.parseLong(index)) {
				//adiciona um check box marcado
				if (produtof.getId() == produto.getId()) {
					response.getWriter().write(
							"<input type ='checkbox' name=\""
									+ produto.getId() + "\"CHECKED>"
									+ produto.getNome() + "<BR>");
					break;
				}
			}
		}

		//check box livre
		if (produto.getProduto().getId() == Long.parseLong(index)) {
			response.getWriter().write(
					"<input type ='checkbox' name=\"" + produto.getId()
							+ "\">" + produto.getNome() + "<BR>");
		}
	}
	out.print("</div id = tpro>");

Claro, existem todos os import’s e etc.

desde de ja mto obrigado pelas respostas