Java Web, servet hibernat e framework

Estou cursando técnico em Informática - na área desenvolvimento web.

to com uma dúvida em java web jsp Framework e hibernat
em um pequeno aplicativo que to desenvolvendo… de venta de baixa no estoque…

onde ha um estoque e estoque da venda… ligada a uma Fk onde quando estoque da venda acabar queria dar baixa
automatica no estoque de uma certa quantidade que irei informa

Qual seria o problema? O que você ja tem, o que está dando errado ou não consegue fazer.
Seja mais especifico, por favor.

Aqui estar meu meu arquivo controller servet

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// processRequest(request, response);

    Produto pro = new Produto();
    ProdutoDao prodao = new ProdutoDao();
     
    Estoqueproduto esto = new Estoqueproduto();
    EstoqueprodutoDao estodao = new EstoqueprodutoDao();
    
    esto = estodao.consultaForId(Integer.valueOf(request.getParameter("txtcod")));
    
    Integer  qtde = Integer.valueOf(request.getParameter("txtqtd"));
    esto.setEstpqtde(qtde);
    
    Double preco = Double.valueOf(request.getParameter("txtpreco"));
    esto.setEstppreco(preco);
    
    Double custo = Double.valueOf(request.getParameter("txtcusto"));
    esto.setEstpcusto(custo);
    
    Integer trans = Integer.valueOf(request.getParameter("txtqtde"));
           
    if(trans>esto.getEstpqtde()){
        
      JOptionPane.showMessageDialog(null,"Transferencia não autoriazada - Estoque Baixo !!!!");
        response.sendRedirect("RealizarTransferencia.jsp");
  
    }else{
        
     esto.setEstpqtde(esto.getEstpqtde()-trans);
     estodao.alterar(esto);
     
     pro.setPronome(null);
     pro.setPropreco(preco);
     pro.setStatusproduto(null);
     pro.setTipoproduto(null);
     pro.setEstoqueproduto(esto);
     pro.setFornecedor(null);
     
     pro.setProqtde(pro.getProqtde()+trans);
     prodao.Alterar(pro);

    }
       response.sendRedirect("RealizarTransferencia.jsp");
    request.getRequestDispatcher("RealizarTransferencia.jsp").include(request, response);
}

/**
 * Returns a short description of the servlet.
 *
 * @return a String containing servlet description
 */
@Override
public String getServletInfo() {
    return "Short description";
}// </editor-fold>

}

----------------------------------------////////////////////
nesse arquivo que quero alterar o estoque do produto, retirando e alterando estoque do produto para a venda…adcionando .

[quote=BaRon]Aqui estar meu meu arquivo controller servet

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// processRequest(request, response);

    Produto pro = new Produto();
    ProdutoDao prodao = new ProdutoDao();
     
    Estoqueproduto esto = new Estoqueproduto();
    EstoqueprodutoDao estodao = new EstoqueprodutoDao();
    
    esto = estodao.consultaForId(Integer.valueOf(request.getParameter("txtcod")));
    
    Integer  qtde = Integer.valueOf(request.getParameter("txtqtd"));
    esto.setEstpqtde(qtde);
    
    Double preco = Double.valueOf(request.getParameter("txtpreco"));
    esto.setEstppreco(preco);
    
    Double custo = Double.valueOf(request.getParameter("txtcusto"));
    esto.setEstpcusto(custo);
    
    Integer trans = Integer.valueOf(request.getParameter("txtqtde"));
           
    if(trans>esto.getEstpqtde()){
        
      JOptionPane.showMessageDialog(null,"Transferencia não autoriazada - Estoque Baixo !!!!");
        response.sendRedirect("RealizarTransferencia.jsp");
  
    }else{
        
     esto.setEstpqtde(esto.getEstpqtde()-trans);
     estodao.alterar(esto);
     
     pro.setPronome(null);
     pro.setPropreco(preco);
     pro.setStatusproduto(null);
     pro.setTipoproduto(null);
     pro.setEstoqueproduto(esto);
     pro.setFornecedor(null);
     
     pro.setProqtde(pro.getProqtde()+trans);
     prodao.Alterar(pro);

    }
       response.sendRedirect("RealizarTransferencia.jsp");
    request.getRequestDispatcher("RealizarTransferencia.jsp").include(request, response);
}

/**
 * Returns a short description of the servlet.
 *
 * @return a String containing servlet description
 */
@Override
public String getServletInfo() {
    return "Short description";
}// </editor-fold>

}

----------------------------------------////////////////////
nesse arquivo que quero alterar o estoque do produto, retirando e alterando estoque do produto para a venda…adcionando .[/quote]

http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

O que ele está querendo dizer é…

Qual o erro?
Qual a sua dificuldade?

[list]Nessa pagina onde eu queria fazer a transferencia onde ela trás o codigo do produto e a quantidade no estoque e o campo onde irei digitar a quantia a ser transferida[/list]

[code]<%@page import=“model.dao.EstoqueprodutoDao”%>
<%@page import=“model.bean.Estoqueproduto”%>
<%@page import=“java.util.ArrayList”%>
<%@page import=“java.util.List”%>
<%@page import=“model.dao.ProdutoDao”%>
<%@page import=“model.bean.Produto”%>
<%@page contentType=“text/html” pageEncoding=“UTF-8”%>

JSP Page <% List lista = new ArrayList(); EstoqueprodutoDao estodao = new EstoqueprodutoDao(); Estoqueproduto esto = estodao.consultaForId(Integer.valueOf(request.getParameter("codigo"))); %> <% lista = estodao.listar(0); for(Estoqueproduto e: lista){ %>
        <%}%>
        </tr>
        <tr>
     <td>Quantidade para transferir:</td>
            <td><input type="hidden" name="txtcod" value="<%=esto.getEstpcodigo()%>">
            <td><input type="text   " name="txtqtde" id="txtqtde"></td>
            <td><input type="hidden" name="txtpreco" value="<%=esto.getEstppreco()%>">
            <td><input type="hidden" name="txtcusto" value="<%=esto.getEstpcusto()%>">
            <td><input type="hidden" name="txtqtd" value="<%=esto.getEstpqtde() %>"> 
         </tr>
<tr>
            <td><input type="submit" value="Salvar">
    <Input type="button" value="Voltar" onclick="location='ListaEstoqueProduto.jsp'"</td>
</tr>
</tbody>

</table>
</form>
[/code]

[list]Servelt do controller: onde queria fazer a lógica de diminuir do estoquedo produto e acrescentar no estoque do produto da vendar[/list]

[code]@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// processRequest(request, response);

    Produto pro = new Produto();
    ProdutoDao prodao = new ProdutoDao();
     
    Estoqueproduto esto = new Estoqueproduto();
    EstoqueprodutoDao estodao = new EstoqueprodutoDao();

/* ----> realizar a consulta pelo codigo do produto e comparar com mesmo codigo selecionado*/
esto = estodao.consultaForId(Integer.valueOf(request.getParameter(“txtcod”)));

/* ----> quantidade do estou atual do BD*/
Integer qtde = Integer.valueOf(request.getParameter(“txtqtd”));
esto.setEstpqtde(qtde);

/* ----> valor do produto do estoque */
Double preco = Double.valueOf(request.getParameter(“txtpreco”));
esto.setEstppreco(preco);

/* ----> custo do produto do estoque*/
Double custo = Double.valueOf(request.getParameter(“txtcusto”));
esto.setEstpcusto(custo);

/* ----> valor digitador da quantidade para ser transferida para estoque da venda */
Integer trans = Integer.valueOf(request.getParameter(“txtqtde”));

/* ---->ver se a quantidade para ser transferia e meior que tem no estoque do produto */
if(trans>esto.getEstpqtde()){

      JOptionPane.showMessageDialog(null,"Transferencia não autoriazada - Estoque Baixo !!!!");
        response.sendRedirect("RealizarTransferencia.jsp");
  
    }else{

/* ---->alterar a quantidade */
esto.setEstpqtde(esto.getEstpqtde()-trans);
estodao.alterar(esto);

     pro.setPronome(null);
     pro.setPropreco(preco);
     pro.setStatusproduto(null);
     pro.setTipoproduto(null);
     pro.setEstoqueproduto(esto);
     pro.setFornecedor(null);

/* ----> aqui que nao esta realizando a alterando o estoque da venda…com valor dado para transferncia*/
pro.setProqtde(pro.getProqtde()+trans);
prodao.Alterar(pro);

    }
       response.sendRedirect("RealizarTransferencia.jsp");
    request.getRequestDispatcher("RealizarTransferencia.jsp").include(request, response);
}

[/code]

Lista de Estoque Produto
Codigo Estoque: Quantidade:
<%=e.getEstpcodigo()%> <%=e.getEstpqtde()%>

tire esse scriplets da pag, existe EL ( ${lista} )

e post teu método de persistência, o stacktrace, as entidades com os relacionamentos e notações … e o que acontece quando manda alterar?

[quote]Quando eu mando alterar ele ta alterando mais todos os produtos não apenas oque eu mandei mais todos do estoque do produto,
e não ta adicionando no estoque da venda, não fazendo nem uma alteração. [/quote]

[quote=mairon] tire esse scriplets da pag, existe EL ( ${lista} )

e post teu método de persistência, o stacktrace, as entidades com os relacionamentos e notações … e o que acontece quando manda alterar?[/quote]

faça isso para se ter uma ideia do que pode ser.

me passar um exemplo de como teria que fazer desconheço esse método de fazer sem meus lista

dê uma olhada, é melhor e o que tu faz usando scriplet não é boa prática

http://www.dsc.ufcg.edu.br/~jacques/cursos/daca/html/jstl/jstl.htm

http://www.linhadecodigo.com.br/artigo/3154/introducao-a-jstl.aspx

mas pra te ajudar melhor seria bom se tu postasse os teus métodos de persistência(DAO’s ou Repository), suas entidades com os relacionamentos (se tu usa ManyToOne, OneToMany, …) e para ver também as notações dos atributos (Cascade.All, Cascade.Merge,…), por que tu falando só que não ta dando certo fica difícil de te ajudar.

A escola te ensinar a programar assim é complicado hein.

Em meus cursos ensino que existem e como eram utilizados os Scriptlets, mas não devem ser utilizados.

Recomendo que leia a apostila da Caelum sobre Java Web, ela é excelente e vai te ajudar muito.

verdade vejo que o ensinamento adquirido ta meio diferente mais tenho que dar mais umas
lida em outras fontes e ver se faço junção dos conhecimentos adquirido la e nos novos.