Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Getting error message in tomcat server

DevguyNov 9 2010 — edited Nov 10 2010
Have a look at the following programs:

AuthenticationFilter_

import javax.servlet.*;
import java.io.*;
import java.sql.*;
public class AuthenticationFilter implements Filter
{
ServletContext sc;
Connection con;
public void init(FilterConfig f) throws ServletException
{
System.out.println(f.getFilterName() + "Filter Initialized");
String d = f.getInitParameter("driver");
String url = f.getInitParameter("url");
String user = f.getInitParameter("user");
String pwd = f.getInitParameter("password");
try
{
Class.forName(d);
con = DriverManager.getConnection(url,user,pwd);
System.out.println("Connection Established");
}
catch (Exception e)
{
e.printStackTrace();
}
sc = f.getServletContext();
}
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws ServletException,IOException
{
Statement st = null;
ResultSet rs = null;
String user = request.getParameter("user");
String pwd = request.getParameter("password");
try
{
st = con.createStatement();
String sql = "SELECT * FROM OURUSERS WHERE usr = " + user + " and password = " + pwd + " ";
rs = st.executeQuery(sql);
if(rs.next())
chain.doFilter(request,response);
else
sc.getRequestDispatcher("/error.html").forward(request,response);
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
try
{
if(rs!=null)
rs.close();
if(st!=null)
st.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}//doFilter()
public void destroy()
{
try
{
if(con!=null)
con.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}

*2)_HitCounterFilter__

import javax.servlet.*;
import java.io.*;
public class HitCounterFilter implements Filter
{
ServletContext sc;
int count;
public void init(FilterConfig f)throws ServletException
{
System.out.println(f.getFilterName() + "Filter Initialized");
sc = f.getServletContext();
}
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws ServletException,IOException
{
chain.doFilter(request,response);
count++;
sc.log("Number of times request came to LoginServlet is " + count);
}
public void destroy()
{
}
}

*3) LoginServlet*

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class LoginServlet extends HttpServlet
{
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
pw.println("<HTML> <BODY BGCOLOR=yellow>");
pw.println("<H1> WELCOME TO OUR WEBSITE</H1>");
pw.println("</BODY>");
pw.println("</HTML>");
pw.close();
}
}

web.xml

<web-app>
<filter>
<filter-name>authenticate</filter-name>
<filter-class>AuthenticationFilter</filter-class>

<init-param>
<param-name>driver</param-name>
<param-value>oracle.jdbc.driver.OracleDriver</param-value>
</init-param>

<init-param>
<param-name>url</param-name>
<param-value>jdbc:oracle:thin:@localhost:1521:orcl</param-value>
</init-param>

<init-param>
<param-name>user</param-name>
<param-value>scott</param-value>
</init-param>

<init-param>
<param-name>password</param-name>
<param-value>tiger</param-value>
</init-param>

</filter>
<filter>
<filter-name>hitcount</filter-name>
<filter-class>HitCounterFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>authenticate</filter-name>
<url-pattern>/nit</url-pattern>
</filter-mapping>

<servlet>
<servlet-name>Login</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>Login</servlet-name>
<url-pattern>/nit</url-pattern>
</servlet-mapping>
</web-app>

Error_

java.sql.SQLException: ORA-00904: "SANDY": invalid identifier

at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:189)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:242)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:554)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1478)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteDescribe(TTC7Protocol.java:
677)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.jav
a:2371)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:2660)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:
777)
at AuthenticationFilter.doFilter(AuthenticationFilter.java:37)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:48
9)
at java.lang.Thread.run(Thread.java:619)

The above error message i am getting in Tomcat server,i am having Oracle 11g V1..My SQL prompt is open and i have a table named "ourusers"...Can anyone kindly gimme the solution for this problem+*

Edited by: sandy on Nov 9, 2010 8:59 AM
This post has been answered by 794117 on Nov 9 2010
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Dec 8 2010
Added on Nov 9 2010
2 comments
297 views