日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

java光标位置无效_ResultSet.getString(1)引发java.sql.SQLException:当前光标位置的无效操作...

發布時間:2025/3/11 数据库 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java光标位置无效_ResultSet.getString(1)引发java.sql.SQLException:当前光标位置的无效操作... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

當我運行以下servlet時:

// package projectcodes;

public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {

String UserID = request.getParameter("UserID");

String UserPassword = request.getParameter("UserPassword");

String userName = null;

String Email = null;

Encrypter encrypter = new Encrypter();

String hashedPassword = null;

try {

hashedPassword = encrypter.hashPassword(UserPassword);

Context context = new InitialContext();

DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/photog");

Connection connection = ds.getConnection();

String sqlStatement = "SELECT email,firstname FROM registrationinformation WHERE password='" + hashedPassword + "'";

PreparedStatement statement = connection.prepareStatement(sqlStatement);

ResultSet set = statement.executeQuery();

userName = set.getString(1); // <

response.sendRedirect("portfolio_one.jsp");

// userName = set.getString("FirstName");

Email = set.getString(3);

if(set.wasNull() || Email.compareTo(UserID) != 0) {

// turn to the error page

response.sendRedirect("LoginFailure.jsp");

} else {

// start the session and take to his homepage

HttpSession session = request.getSession();

session.setAttribute("UserName", userName);

session.setMaxInactiveInterval(900); // If the request doesn't come withing 900 seconds the server will invalidate the session

RequestDispatcher rd = request.getRequestDispatcher("portfolio_one.jsp");

rd.forward(request, response); // forward to the user home-page

}

}catch(Exception exc) {

System.out.println(exc);

}

我得到以下異常:

INFO: java.sql.SQLException: Invalid operation at current cursor position.

at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source)

at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source)

at org.apache.derby.client.am.ResultSet.getString(Unknown Source)

at com.sun.gjc.spi.base.ResultSetWrapper.getString(ResultSetWrapper.java:155)

-----> at projectcodes.ValidateDataForSignIn.doPost(ValidateDataForSignIn.java:28

at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)

at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1539)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)

at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)

at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)

at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:330)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)

at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:174)

at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:828)

at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:725)

at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1019)

at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)

at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)

at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)

at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)

at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)

at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)

at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)

at com.sun.grizzly.ContextTask.run(ContextTask.java:71)

at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)

at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)

at java.lang.Thread.run(Thread.java:722)

Caused by: org.apache.derby.client.am.SqlException: Invalid operation at current cursor position.

at org.apache.derby.client.am.ResultSet.checkForValidCursorPosition(Unknown Source)

at org.apache.derby.client.am.ResultSet.checkGetterPreconditions(Unknown Source)

... 30 more

服務器上面的日志顯示,行號28是導致異常的原因。但是我無法得到例外的原因。表中的所有列的數據類型均為varchar。

我已在Servlet代碼中突出顯示了行號28 (根據服務器日志的異常原因) 。

總結

以上是生活随笔為你收集整理的java光标位置无效_ResultSet.getString(1)引发java.sql.SQLException:当前光标位置的无效操作...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。