programmera.net -> jsp -> normal     för utskrift      info@programmera.net

Exempel: LoginServlet

1. LoginServlet
2. web.xml
3. Anrop av LoginServlet

1. LoginServlet

På denna sida ska vi titta på ett exempel på en Servlet, nämligen LoginServle.java, en Servlet tagen från exemplet  GnomeShop .

LoginServlet sköter inloggning av användare, och denna sida är den första man kommer till i GnomeShop-applikationen.
  • Kräver EJB: LoginServlet.java går inte att kompilera direkt, den utnyttjar UserBean (en EJB) som sköter själva inloggningen. Vill du kompilera exemplet måste du ladda hem hela GnomeShop.
LoginServlet har följande metoder:
  • init(): Denna metod initierar servleten, i LoginServlet så används denna metod för att söka upp UserBean, den EJB som sköter själva inloggningen.
  • service(): Vi skriver över denna metod för att vi då inte behöver bry oss om vilken metod som används för att skicka data till oss (GET eller POST). Det första som händer i denna metod är att vi kollar om parametrarna username och pw är ifyllda, om de är det anropas UserBean med dessa parametrar för att logga in.

2. web.xml

För att en Servlet ska kunna användas måste vi mappa den mot en URL i web.xml. I detta fall är det tänkt att LoginServlet ska kunna nås från  http://localhost:8080/GnomeShop/login , så web.xml får följande utseende:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
    "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app>

<servlet>
    <servlet-name>loginServlet</servlet-name>
    <servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>loginServlet</servlet-name>
    <url-pattern>/login</url-pattern>
</servlet-mapping>

</web-app>

3. Anrop av LoginServlet

När vi anropar LoginServlet möts vi av detta formulär:



Om inloggningen lyckas ser vi följande: