Meus prezados, bom dia
primeiramente vamos aos códigos:
CONEXAO:
Uso das variáveis conDriver e urlString para receberem a String de conexão com o banco de dados.
os coloquei em uma página de fragmento (*.jspf).
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:set var="conDriver" value="com.mysql.jdbc.Driver"/>
<c:set var="urlString" value="jdbc:mysql://localhost:3306/dbSiteCSS?user=root&password=cl159ss&Unicode=true"/>
REGRA DE NEGÓCIO
Criei uma classe com vários métodos entre eles estão o que uso para verificar a conexao (armaConexao) e o outro, uma query, que receberá as instruções (Insert, Update e Delete).
private int armaConexao(){
int ret = 0;
try{
Class.forName(conDriver);
con = DriverManager.getConnection(urlString);
stm = con.createStatement();
}catch(ClassNotFoundException e1){
qry = e1.getMessage();
ret = -1;
}catch(Exception e2){
qry = e2.getMessage();
ret = -2;
}
return ret;
}
protected int exeQuery(String stQuery){
int ret = armaConexao();
if(ret > -1){
try{
qry = stQuery;
ret = stm.executeUpdate(qry);
}catch(SQLException e){
ret = -3;
}
}
return ret;
}
TREIXO DA CLASSE ONDE USO O INSERT INTO:
public int getInserir(){
return rn.exeQuery(
"insert into tbhome("
+ "homeTitulo,"
+ "homeTexto,"
+ "urlLink,"
+ "txtLink)values("
+txtTit+","+
textoArea+","+
urlLink+","+
textoLink+")");
}
MINHA PÁGINA JSP COM O BEANS INSTANCIADO
Observar o java script logo a baixo.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@page contentType="text/html; charset=iso-8859-1" language="java" %>
<%@include file="WEB-INF/jspf/verificar.jspf" %>
<%@include file="WEB-INF/jspf/varGlobal.jspf" %>
<jsp:useBean id="pgHome" class="minhasClasses.clsHome">
<c:set target="${pgHome}" property="url" value="${urlString}"/>
<c:set target="${pgHome}" property="drv" value="${conDriver}"/>
<c:set target="${pgHome}" property="txtTit" value="${param.txtTitulo}"/>
<c:set target="${pgHome}" property="textoArea" value="${param.textoCorpoHome}"/>
<c:set target="${pgHome}" property="urlLink" value="${param.txtLink}"/>
<c:set target="${pgHome}" property="textoLink" value="${param.textoLink}"/>
</jsp:useBean>
<c:set var="retorno" value="${pgHome.inserir}"/>
<script language="JavaScript">
<c:if test="${retorno < 1}"> //observar este teste
alert('Problemas para inserir este registro, verifique os dados'); //observar
</c:if>
history.go(-1);
</script>
Ao testar <c:if test="${retorno < 1}"> retorna sempre menor que um, Indicando um erro na query. Mas não vejo o erro real, só o que está no javaScript (alert(‘Problemas para inserir este registro, verifique os dados’);). deem uma olha na minha SQL acima. Acho que está tudo ok, condizentes com o banco de dados e as páginas jsp correspondentes.
vlw