hi Iam working with an app and the coresponding java files and
web.xml are as follows
java classes:
AuthenticatefilterappServlet.java
package com.org.login;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.*;
import javax.servlet.*;
@SuppressWarnings("serial")
public class AuthenticatefilterappServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException, ServletException {
resp.setContentType("text/html");
PrintWriter pw=resp.getWriter();
pw.println("WELCOME TO WEBSITE");
pw.close();
resp.getWriter().println("Hello, world");
}
}
Authfilter.java
package com.org.login;
import javax.servlet.*;
import java.io.*;
public class AuthFilter implements Filter {
FilterConfig f=null;
ServletContext sc=null;
public void doFilter(ServletRequest request,ServletResponse
response,FilterChain chain)throws IOException,ServletException
{
String user=request.getParameter("user");
String password=request.getParameter("password");
if(!(user.equals(password)))
sc.getRequestDispatcher("/error.html").forward(request,response);
else
chain.doFilter(request,response);
}
public void init(FilterConfig filterConfig)throws ServletException
{
f=filterConfig;
sc=f.getServletContext();
}
public void destroy()
{
f=null;
}
}
Web.xml
<?xml version="1.0" encoding="utf-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<filter>
<filter-name>auth</filter-name>
<filter-class>AuthFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>auth</filter-name>
<url-pattern>/nit</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>Authenticatefilterapp</servlet-name>
<servlet-class>com.org.login.AuthenticatefilterappServlet</servlet-
class>
</servlet>
<servlet-mapping>
<servlet-name>Authenticatefilterapp</servlet-name>
<url-pattern>/nit</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>login.html</welcome-file>
</welcome-file-list>
</web-app>
error.html
<html>
<body>
<center><h3>INVALID LOGIN OR PASSWORD</h3></center>
<form action="./nit" method=post>
USERNAME<input type=text name=user><br>
PASSWORD<input type=password name=password><br>
<input type=submit value=login>
</form>
</body>
</html>
login.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- The HTML 4.01 Transitional DOCTYPE declaration-->
<!-- above set at the top of the file will set -->
<!-- the browser's rendering engine into -->
<!-- "Quirks Mode". Replacing this declaration -->
<!-- with a "Standards Mode" doctype is supported, -->
<!-- but may lead to some differences in layout. -->
<html>
<body>
<form action="./nit" method="post">
USER NAME<input type=text name=user><br>
PASSWORD<input type=password name=password><br>
<input type=submit value=LOGIN>
</form>
</body>
</html>
when i debug or run iam getting the following warning
15 Sep, 2009 12:32:18 PM com.google.apphosting.utils.jetty.JettyLogger
warn
WARNING: EXCEPTION
java.lang.ClassNotFoundException: AuthFilter
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at
com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass
(IsolatedAppClassLoader.java:142)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at org.mortbay.util.Loader.loadClass(Loader.java:91)
at org.mortbay.util.Loader.loadClass(Loader.java:71)
at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73)
at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:
83)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.servlet.ServletHandler.initialize
(ServletHandler.java:589)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
at org.mortbay.jetty.webapp.WebAppContext.startContext
(WebAppContext.java:1218)
at org.mortbay.jetty.handler.ContextHandler.doStart
(ContextHandler.java:500)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:
448)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.handler.HandlerWrapper.doStart
(HandlerWrapper.java:117)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.handler.HandlerWrapper.doStart
(HandlerWrapper.java:117)
at org.mortbay.jetty.Server.doStart(Server.java:217)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at
com.google.appengine.tools.development.JettyContainerService.startContainer
(JettyContainerService.java:152)
at
com.google.appengine.tools.development.AbstractContainerService.startup
(AbstractContainerService.java:116)
at com.google.appengine.tools.development.DevAppServerImpl.start
(DevAppServerImpl.java:218)
at com.google.appengine.tools.development.DevAppServerMain
$StartAction.apply(DevAppServerMain.java:162)
at com.google.appengine.tools.util.Parser$ParseResult.applyArgs
(Parser.java:48)
at com.google.appengine.tools.development.DevAppServerMain.<init>
(DevAppServerMain.java:113)
at com.google.appengine.tools.development.DevAppServerMain.main
(DevAppServerMain.java:89)
15 Sep, 2009 12:32:18 PM com.google.apphosting.utils.jetty.JettyLogger
warn
WARNING: failed auth
javax.servlet.UnavailableException: AuthFilter
at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:79)
at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:
83)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.servlet.ServletHandler.initialize
(ServletHandler.java:589)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
at org.mortbay.jetty.webapp.WebAppContext.startContext
(WebAppContext.java:1218)
at org.mortbay.jetty.handler.ContextHandler.doStart
(ContextHandler.java:500)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:
448)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.handler.HandlerWrapper.doStart
(HandlerWrapper.java:117)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.handler.HandlerWrapper.doStart
(HandlerWrapper.java:117)
at org.mortbay.jetty.Server.doStart(Server.java:217)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at
com.google.appengine.tools.development.JettyContainerService.startContainer
(JettyContainerService.java:152)
at
com.google.appengine.tools.development.AbstractContainerService.startup
(AbstractContainerService.java:116)
at com.google.appengine.tools.development.DevAppServerImpl.start
(DevAppServerImpl.java:218)
at com.google.appengine.tools.development.DevAppServerMain
$StartAction.apply(DevAppServerMain.java:162)
at com.google.appengine.tools.util.Parser$ParseResult.applyArgs
(Parser.java:48)
at com.google.appengine.tools.development.DevAppServerMain.<init>
(DevAppServerMain.java:113)
at com.google.appengine.tools.development.DevAppServerMain.main
(DevAppServerMain.java:89)
15 Sep, 2009 12:32:18 PM com.google.apphosting.utils.jetty.JettyLogger
warn
WARNING: Failed startup of context
com.google.apphosting.utils.jetty.devappenginewebappcont...@1e808ca
{/,C:\jave exe\authenticatefilterapp\war}
javax.servlet.UnavailableException: AuthFilter
at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:79)
at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:
83)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.servlet.ServletHandler.initialize
(ServletHandler.java:589)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
at org.mortbay.jetty.webapp.WebAppContext.startContext
(WebAppContext.java:1218)
at org.mortbay.jetty.handler.ContextHandler.doStart
(ContextHandler.java:500)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:
448)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.handler.HandlerWrapper.doStart
(HandlerWrapper.java:117)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at org.mortbay.jetty.handler.HandlerWrapper.doStart
(HandlerWrapper.java:117)
at org.mortbay.jetty.Server.doStart(Server.java:217)
at org.mortbay.component.AbstractLifeCycle.start
(AbstractLifeCycle.java:40)
at
com.google.appengine.tools.development.JettyContainerService.startContainer
(JettyContainerService.java:152)
at
com.google.appengine.tools.development.AbstractContainerService.startup
(AbstractContainerService.java:116)
at com.google.appengine.tools.development.DevAppServerImpl.start
(DevAppServerImpl.java:218)
at com.google.appengine.tools.development.DevAppServerMain
$StartAction.apply(DevAppServerMain.java:162)
at com.google.appengine.tools.util.Parser$ParseResult.applyArgs
(Parser.java:48)
at com.google.appengine.tools.development.DevAppServerMain.<init>
(DevAppServerMain.java:113)
at com.google.appengine.tools.development.DevAppServerMain.main
(DevAppServerMain.java:89)
The server is running at http://localhost:8087/
and when i send user request to the app thru url iam getting the
following error
HTTP ERROR: 503
SERVICE_UNAVAILABLE
RequestURI=/login.html
Powered by jetty://
So some one help me in rectifying the error
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google App Engine for Java" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---