I am trying to display a blob image in a jsp page by (using this) but i am getting an error:
javax.servlet.ServletException: java.sql.SQLException: Column '2' not found.
My table is:
create table upload_image
(
    iImageID int AUTO_INCREMENT primary key,
    bImage longblob
);
Code: uploadimage.jsp
<%@ page language="java"  errorPage="" %>
<html>
<head>
<title>Image insert into database</title>
</head>
<body>
<form name="frm" action="saveImage.jsp" enctype="multipart/form-data" method="post">
<input type="file" name="uProperty" /> <br>
<input type="submit" name="goUpload" value="Upload" />
</form>
</body>
</html>
saveImage.jsp
<%@ page import="java.sql.*" %>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@ page import="org.apache.commons.io.output.*"%>
<%@ page import="org.apache.commons.fileupload.servlet.*"%>
<%@ page import="org.apache.commons.fileupload.disk.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%
 Connection conn=null;
 Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/online","root", "12345");
 PreparedStatement psImageInsertDatabase=null;
 byte[] b=null;
 try{
   String sqlImageInsertDatabase="insert into upload_image (bImage) values(?)";
   psImageInsertDatabase=conn.prepareStatement(sqlImageInsertDatabase);
   DiskFileItemFactory factory = new DiskFileItemFactory();
   ServletFileUpload sfu = new ServletFileUpload(factory);
   List items = sfu.parseRequest(request);
   Iterator iter = items.iterator();
     while (iter.hasNext()) {
     FileItem item = (FileItem) iter.next();
     if (!item.isFormField()) {
          b = item.get();
       }
     }
     psImageInsertDatabase.setBytes(1,b);
     psImageInsertDatabase.executeUpdate();
    }
   catch(Exception e)
   {
    e.printStackTrace();
    response.sendRedirect("addimage.jsp");
   }
   %>
get.jsp
<%@ page import ="java.sql.*" %>
<%
 Class.forName("com.mysql.jdbc.Driver");
 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/online","root", "12345");
Statement st = con.createStatement();
ResultSet i = st.executeQuery("select * from upload_image");
%>
 <%
 while(i.next( )){
   %>
       <img src="imageServlet?id=<%=i.getString("2")%>" />
<%  }%>
After executing the get.jsp (after executing uploadimage.jsp) I am getting "Column '2' not found." Please help me to display the image in the jsp page
 
     
    