Dae pessoal,
Estou fazendo um sistema simples online e não pretendo usar banco de dados, e por este motivo estou meio ferrado, se puderem me ajudar, lá vai:
O usuário que acessa o sistema irá fornecer alguma informações (4 campos input text). Eu envio estas informações e as manipulo nas classes e armazeno em meu ProdutoVo via servlet. Se o usuário quiser adicionar mais informações ele faz o processo novamente, porque o sistema irá somar as informações atuais com as antigas, no entanto sempre que os sistema consegue novas informações as antigas estão zeradas (acredito que foram resetadas).
Pergunto: Como eu faça para deixa-las armazenadas sem que desaparessam.
P.s. Eu não faço nova instancia do ProdutoVo, mas sempre zera.
Posta aí o código relevante, e fale aonde você guarda essas informações, já que não usa um BD
OK
Formulario do meu jsp
<form action="ParedeServlet" method="POST" id="">
<table class="font">
<tr>
<td colspan="2" Style="color: #6D6A64">Entre com as informações</td>
</tr>
<tr>
<td>Comprimento </td>
<td><input type="text" name="comprimento" maxlength="15" Style="width: 70px" id="info1"/> </td>
</tr>
<tr>
<td>Altura </td>
<td><input type="text" name="altura" maxlength="15" Style="width: 70px " id="info2"/></td>
</tr>
<tr>
<td>Qtde de portas </td>
<td><input type="text" name="qtdePortas" maxlength="15" Style="width: 70px" id="info3"/> </td>
</tr>
<tr>
<td>Qtde de janelas </td>
<td><input type="text" name="qtdeJanelas" maxlength="15" Style="width: 70px" /> </td>
</tr>
<tr>
<td><button class=" btn btn-success btn-large" type="submit" id="botaoAdicionar">Adicionar</button></td>
<!--<td><input type="submit" class="" value="" Style="width: 85px" class="botaoAdicionar"/></td>-->
</tr>
</table>
</form>
Meu POST
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ParedeNormas normas = new ParedeNormas();
normas.setComprimento(Double.valueOf(request.getParameter("comprimento")));
normas.setAltura(Double.valueOf(request.getParameter("altura")));
normas.estruturaNormas();
request.setAttribute("minhas", normas);
request.setAttribute("setado", "checked");
request.getRequestDispatcher("parede.jsp").forward(request, response);
}
Eu envio as informações para a classe normas e as mesmas são manipuladas e enviadas para somaMetragem().
Neste momento a minha variavel comprimento e altura já estão populadas.
O comprimento e altura são as informações atuais e o metroQuadradoTotal deveria ser a soma das anteriores.
private double metroQuadradoTotal;
public void somaMetragem(){
this.metroQuadradoTotal = (comprimento * altura) + metroQuadradoTotal;
}
O problema não seria o fato de você dar um new em ParedeNormas a cada request?
Você precisa ver melhor como aplicar sua persistência, esse seu modelo não ficou muito bom.
Amigo você tem razão! Vou testar e aviso se funcionou…
Obrigado
Funcionou velho, muito obrigado.