Erro instrução Update

1 resposta
G
Caros, Estou tentado executar este update:
<%
            if (request.getParameter("acao") == null) 
{
        %>
<hr>
        <p align="center"><a href="menu.jsp" title="menu"><img src="imagens/home.png" title="menu" width="24"></a>
            <a href="manutencao_processo.jsp" title="manutenção"><img src="imagens/voltar2.png"  width="30" title="manutenção"></a></p>
        <hr>
        <p align="center"><span class="style1">Alteração de Processos</span></p>
        <div id="tudo">
            <div id="conteudo">
                <form id="frmAlteraProcesso" name="frmAlteraProcesso" method="post" action="alteraProcesso.jsp?acao=alterar">
                    <label>ID: 
                        <input name="id" type="text" id="id" value="<%=request.getParameter("id")%>" size="10" maxlength="10" disabled="disabled"/> 
                    </label>
                    <label>Processo: 
                        <input name="processo" type="text" id="processo" value="<%=request.getParameter("processo")%>" size="10" maxlength="10" disabled="disabled"/> 
                    </label>
                    <p>
                        <label>Contrato:
                            <input name="contrato" type="text" id="contrato" value="<%=request.getParameter("contrato")%>"  disabled="disabled"/>
                        </label> &nbsp;
                        <label>Comprador:
                            <input name="comprador" type="text" id="comprador" value="<%=request.getParameter("comprador")%>" size="50" maxlength="50" />
                        </label>
                        <label>Endereço:
                            <input name="endImv" type="text" id="endImv" value="<%=request.getParameter("endImv")%>" size="50" maxlength="50" />
                        </label>
                        <label>Cidade:
                            <input name="cidImv" type="text" id="cidImv" value="<%=request.getParameter("cidImv")%>" size="20" maxlength="20" />
                        </label>
                        <label>Estado:
                            <input name="ufImv" type="text" id="ufImv" value="<%=request.getParameter("ufImv")%>" size="2" maxlength="2" />
                        </label>

                    </p>
                    <p>
                        <label>Local:
                            <input name="local" type="text" id="local" value="<%=request.getParameter("local")%>" size="20" maxlength="20" />
                        </label>
                    </p>
                    <p>
                        <label>
                            <input type="submit" name="Alterar" id="gravar" value="Alterar" />
                        </label>
                        <label></label>
                        <input type="reset" name="Limpar" id="Limpar" value="Limpar" />
                        <label></label>
                    </p>
                </form>
            </div>
        </div>
        <%} else {

            
                if ((request.getParameter("comprador").length() <= 0)
                        || (request.getParameter("endImv").length() <= 0)
                        || (request.getParameter("cidImv").length() <= 0)
                        || (request.getParameter("ufImv").length() <= 0)
                        || (request.getParameter("local").length() <= 0)) {
                } 
                else
                    {
                    try 
                    {
                        Class.forName("com.mysql.jdbc.Driver");
                    
                        Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/controle", "root", "root");
                    
                        Statement st = con.createStatement();

                        String sql = ("update cadprocesso set comprador='" + request.getParameter("comprador") + "',"
                                                                     + "endImv='" + request.getParameter("endImv") + "',"
                                                                     + "cidImv='" + request.getParameter("cidImv") + "',"
                                                                     + "ufImv='" + request.getParameter("ufImv") + "',"
                                                                     + "local='" + request.getParameter("local") + "'"
                                                                     + "where id="+request.getParameter("id"));
                        st.executeUpdate(sql);

                        out.println("<p align='center'><font color='blue' face='arial'>Dados alterado com sucesso!</font></p>"
                         + "<br />"
                         + "<a href='manutencao_processo.jsp'><img src='imagens/voltar.png' title='voltar' width='40'></a>");
                    } 
                    catch (ClassNotFoundException erroClass) 
                    {
                        out.println("Classe Driver JDBC não foi localizado, erro = " + erroClass);
                    } 
                    catch (SQLException erroSQL) 
                    {
                        out.println("Erro de conexão com o Banco de dados. ERRO = " + erroSQL);
                    }
                }
            
            }
        %>

    </body>
</html>
Porém o update não executa. Podem ajudar, informando-me onde estou errando. Obrigado.

1 Resposta

drsmachado

Nunca, jamais, em hipótese alguma, faça SQL a partir da JSP.
“drsmachado, por que não posso fazer sql a partir da jsp, se há suporte para isso?”. Por que o ideal é que você faça com que cada elemento da tua aplicação execute suas próprias tarefas.
“Mas meu chefe quer assim”, bom, cabe a você explicar que é mais simples e produtivo criar uma servlet ou um javabean e deixar por conta destes a parte de persistir (mesmo não sendo o ideal) ou mesmo informar a ele sobre as vantagens de modelos em camadas.

Criado 15 de setembro de 2013
Ultima resposta 16 de set. de 2013
Respostas 1
Participantes 2