When i m trying to get data in textbox as readonly from database i m getting following error.and my code is shown below. type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception
org.apache.jasper.JasperException: Exception in JSP: /raisereq.jsp:72
<tr>
<td width="108">Name:</td>
<td width="185"><label>
<input type="text" name="fname" value="<%=rs.getString(1)%>" readonly/>
</label></td>
</tr>
<tr>
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:395)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
root cause
javax.servlet.ServletException: Invalid column index
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
org.apache.jsp.raisereq_jsp._jspService(raisereq_jsp.java:175)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:371)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
root cause
java.sql.SQLException: Invalid column index
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
oracle.jdbc.driver.OracleResultSetImpl.getString(OracleResultSetImpl.java:379)
org.apache.jsp.raisereq_jsp._jspService(raisereq_jsp.java:117)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:371)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.35 logs. Apache Tomcat/5.5.35
My Code is:.
<%
String empid=(String) session.getAttribute("empid");
ResultSet rs=null;
Statement stmt=null;
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","adm","adm");
stmt=con.createStatement();
rs=stmt.executeQuery("select fname,empid from cremp where empid='"+empid+"'");
rs.next();
}
catch(Exception e){}
finally {
rs.close();
stmt.close();
}
%>
<table width="309" border="1" align="center">
<tr>
<td width="108">Name:</td>
<td width="185"><label>
<input type="text" name="fname" value="<%=rs.getString(1)%>" readonly/>
</label></td>
</tr>
<tr>
<td>Id:</td>
<td><label>
<input type="text" name="empid" value="<%=rs.getString(6)%>" readonly/>
</label></td>
</tr>
Here is a jsp code that retrieves data from database and display it on the textboxes.
<%@page language="java"%>
<%@page import="java.sql.*"%>
<table border="1">
<%
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root");
String query = "select * from employee where id='1'";
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
if(rs.next()){
%>
<tr>
<tr><td>Name</td><td><input type="text" name="name" value="<%=rs.getString("name")%>"></td></tr>
<tr><td>Address</td><td><input type="text" name="address" value="<%=rs.getString("address")%>"></td></tr>
<tr><td>Contact No</td><td><input type="text" name="contact" value="<%=rs.getInt("contactNo")%>"></td></tr>
<tr><td>Email</td><td><input type="text" name="email" value="<%=rs.getString("email")%>"></td></tr>
<%
}
}
catch(Exception e){}
%>
</table>