Witam ponownie :)
Tym razem problem z insertem w JSP tomcat podaje taki błąd:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: An exception occurred processing JSP page /rejestracja.jsp at line 39
36: }
37:
38: nmax++;
39: rs = stmt.executeQuery("insert into Klient values (" + nmax + ",'" + login + "','" + haslo + "','" + imie + "','" + nazwisko + "','" + mail + "','" + telefon + "')");
40: sesja.setAttribute("logged", "true");
41: sesja.setAttribute("login", login);
42: sesja.setAttribute("opcja", "4");
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:412)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
javax.servlet.ServletException: java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:865)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:794)
org.apache.jsp.rejestracja_jsp._jspService(rejestracja_jsp.java:151)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
com.mysql.jdbc.StatementImpl.checkForDml(StatementImpl.java:490)
com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1467)
org.apache.jsp.rejestracja_jsp._jspService(rejestracja_jsp.java:130)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.
A to jest cały kod do rejestracji w Aplikacji JSP:
<%@ include file = "baza.jsp" %>
<% HttpSession sesja = request.getSession(); %>
<%
if (request.getParameter("reglogin").isEmpty() || request.getParameter("reghaslo").isEmpty() ||
request.getParameter("regimie").isEmpty() || request.getParameter("regnazwisko").isEmpty() ||
request.getParameter("regtelefon").isEmpty() || request.getParameter("regmail").isEmpty())
{
sesja.setAttribute("opcja", "1");
sesja.setAttribute("bladrej", "1");
}
else
{
String login = request.getParameter("reglogin");
String haslo = request.getParameter("reghaslo");
String imie = request.getParameter("regimie");
String nazwisko = request.getParameter("regnazwisko");
String telefon = request.getParameter("regtelefon");
String mail = request.getParameter("regmail");
boolean rejestr = false;
rs = stmt.executeQuery("select * from Klient");
while (rs.next())
{
if (rs.getString(2).equals(login))
rejestr = true;
}
if (rejestr == false)
{
String kto = "";
rs = stmt.executeQuery("select max(id) from Klient");
int nmax = -2;
if (rs.next())
{
nmax = rs.getInt(1);
}
nmax++;
rs = stmt.executeQuery("insert into Klient values ('" + nmax + "','" + login + "','" + haslo + "','" + imie + "','" + nazwisko + "','" + mail + "','" + telefon + "')");
sesja.setAttribute("logged", "true");
sesja.setAttribute("login", login);
sesja.setAttribute("opcja", "4");
sesja.setAttribute("podopcja", "0");
}
else
{
sesja.setAttribute("opcja", "1");
sesja.setAttribute("bladrej", "2");
}
}
response.sendRedirect("index.jsp");
%>
Nie mam pojęcia co jest nie tak z tym insertem :( proszę o pomoc.
Nie tylko przy rejestracji mi sie pokazuje taki komunikat. Przy weryfikacji też.
Bardzo proszę o pomoc.
org.apache.jasper.JasperException: An exception occurred processing JSP page /weryfikuj.jsp at line 11
8: {
9: for(int i=0; i<oferty.length;i++)
10: {
11: rs = stmt.executeQuery("update Nieruchomosc set autoryzajca=1 where id="+oferty[i]+"");
12: //rs = stmt.executeQuery("select * from Nieruchomosc where id="+oferty[i]+"");
13:
14: //ses.setAttribute("zdjecie["+ zdjecia[i] +"]", null);
Z odczytem danych z bazy danych nie ma problemy ale z zapisem do bazy :((
Może ma Ktoś jakiś pomysł co z tym zrobić żeby działało ? Bo już zgłupiałem.