[] Re: [[nbdiscuss-fr]] Servlet introuvable...

Didier Fradet <[email protected]> Sun, 28 Mar 2010 10:04:08 +0200
Newsgroups gmane.comp.java.netbeans.general.french
Message-ID <[email protected]>
--Apple-Mail-4--601527644
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=iso-8859-1

Bonjour,

Dans la page html qui contient le formulaire, essaie avec <form =
action=3D"./authentificationclient" method=3D"post"> =E0 la place de =
<form action=3D"authentificationclient" method=3D"post">

Cordialement,

Le 27 mars 2010 =E0 21:36, Jacques PIOTROWSKI a =E9crit :

> Bonjour,
>=20
>=20
> je bouquine en ce moment le livre "Java EE" de J=E9r=F4me Lafosse =
(ENI) et j'essaie de faire fonctionner un exemple d'authentification, =
mais =E7a ne marche pas,
> la servlet n'est pas trouv=E9e :
>=20
> Firefox ne peut trouver le fichier =E0 l'adresse =
/Users/jacquespiotrowski/NetBeansProjects/WebAuthentification/authentifica=
tionclient.
>=20
> Voici les codes sources. Si quelqu'un =E0 une id=E9e...
>=20
> 1) la page HTML avec son formulaire
>=20
> <!--
>     Document   : authentification
>     Created on : 25 mars 2010, 21:03:32
>     Author     : jacquespiotrowski
> -->
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
> <html>
>     <head>
>         <title>Authentification Client</title>
>         <meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3DUTF-8">
>     </head>
>     <body>
>         <center>
>             <h1>Authentification Client</h1>
>             <form action=3D"authentificationclient" method=3D"post">
>                 <table border=3D"1" cellspacing=3D"0" cellpadding=3D"5">=

>                     <tr>
>                         <td>Identifiant</td>
>                         <td><input type=3D"text" name=3D"identifiant" =
id=3D"identifiant" size=3D"20" maxlength=3D"20" value=3D""></td>
>                     </tr>
>                     <tr>
>                         <td>Mot de passe</td>
>                         <td><input type=3D"password" name=3D"motdepasse"=
 id=3D"motdepasse" size=3D"20" maxlength=3D"20" value=3D""></td>
>                     </tr>
>                     <tr>
>                         <td colspan=3D"2" align=3D"center">
>                             <input type=3D"submit" name=3D"valider" =
id=3D"valider" value=3D"Valider">
>                         </td>
>                     </tr>
>                 </table>
>             </form>
>         </center>
>     </body>
> </html>
>=20
> 2) la Servlet:
>=20
> /*
>  *  Document   : ServletAuthentification
>  *  Created on : 25 mars 2010, 21:03:32
> Author     : jacquespiotrowski
>  */
> package betaboutique.servlets.client;
>=20
> import java.io.IOException;
> import java.util.ArrayList;
>=20
> import javax.servlet.ServletConfig;
> import javax.servlet.ServletContext;
> import javax.servlet.ServletException;
>=20
> import javax.servlet.http.HttpServlet;
> import javax.servlet.http.HttpServletRequest;
> import javax.servlet.http.HttpServletResponse;
>=20
> import betaboutique.javabean.Client;
>=20
> public class ServletAuthentification extends HttpServlet {
>=20
>     String ident =3D null;
>     String mdp =3D null;
>     String emailadministrateur =3D null;
>     String urlAuthentification =3D null;
>     String urlErreurs =3D null;
>     String urlBienvenue =3D null;
>=20
>     public void init() {
>=20
>         // preparer la lecture des informations de configutaion de la =
servlet
>         ServletConfig config =3D getServletConfig();
>=20
>         // lire les parametres d'initialisation dans "web.xml"
>         ident =3D (String) =
config.getInitParameter("defautIdentifiant");
>         mdp =3D (String) config.getInitParameter("defautMotDePasse");
>=20
>         // lire les routes
>         urlAuthentification =3D (String) =
config.getInitParameter("urlAuthentification");
>         urlErreurs =3D (String) config.getInitParameter("urlErreurs");
>         urlBienvenue =3D (String) =
config.getInitParameter("urlBienvenue");
>=20
>     }
>=20
>     public void doGet(HttpServletRequest request, HttpServletResponse =
response)
>             throws ServletException, IOException {
>=20
>         // lire les donnees saisies dans le formulaire
>         String identifiant =3D request.getParameter("identifiant");
>         String motdepasse =3D request.getParameter("motdepasse");
>=20
>         // declarer le tableau des erreurs liees au controle de saisie
>         ArrayList<String> erreursParametres =3D new =
ArrayList<String>();
>=20
>         // pas d'identifiant : retour sur la page d'authentification
>         if (identifiant =3D=3D null) {
>             if (urlAuthentification =3D=3D null) {
>                 throw new ServletException("Le parametre =
urlAuthentification est absent");
>             } else {
>                 =
getServletContext().getRequestDispatcher(urlAuthentification).forward(requ=
est, response);
>             }
>             return;
>         }
>=20
>         // controler l'identifiant
>         if (identifiant.equals("")) {
>             erreursParametres.add("Le parametre identifiant est =
vide");
>         }
>         if (!identifiant.matches("^[0-9a-zA-Z]{5,}$")) {
>             erreursParametres.add("Le parametre identifiant doit =
comporter au moins 5 signes (0-9, a-z, A-Z)");
>         }
>=20
>         // controler le mot de passe
>         if (motdepasse.equals("")) {
>             erreursParametres.add("Le parametre mot de passe est =
vide");
>         }
>         if (!motdepasse.matches("^[0-9a-zA-Z]{5,}$")) {
>             erreursParametres.add("Le parametre mot de passe doit =
comporter au moins 5 signes (0-9, a-z, A-Z)");
>         }
>=20
>         // en cas d'erreur, redirection vers l'affichage des erreurs
>         if (erreursParametres.size() > 0) {
>             request.setAttribute("erreurs",erreursParametres);
>             =
getServletContext().getRequestDispatcher("/erreurs.jsp").forward(request, =
response);
>         }
>=20
>         // v=E9rifier l'=E9galit=E9 de la saisie avec les param=E8tres =
externes
>         // so ok, redirection vers la page de bienvenue
>         if (identifiant!=3Dnull && motdepasse!=3Dnull && =
identifiant.equals(ident) && motdepasse.equals(mdp)) {
>             request.setAttribute(identifiant, "identifiant");
>             request.setAttribute(motdepasse, "motdepasse");
>             =
getServletContext().getRequestDispatcher("/bienvenue.jsp").forward(request=
, response);
>         }
>=20
>     }
>=20
>     public void doPost(HttpServletRequest request, HttpServletResponse =
response)
>             throws ServletException, IOException {
>=20
>         doGet(request, response);
>=20
>     }
> }
>=20
> 3) deux autres pages (JSP) pour afficher les erreurs de saisie, ou un =
message de bienvenue:
>=20
> <%--=20
>     Document   : erreurs
>     Created on : 25 mars 2010, 21:03:32
>     Author     : jacquespiotrowski
> --%>
>=20
> <%@page contentType=3D"text/html" pageEncoding=3D"UTF-8"%>
> <%@page import=3D"java.util.ArrayList"%>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>     "http://www.w3.org/TR/html4/loose.dtd">
>=20
> <html>
>     <head>
>         <meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3DUTF-8">
>         <title>Erreurs - Authentification Client</title>
>     </head>
>     <body>
>         <%ArrayList erreurs =3D =
(ArrayList)request.getAttribute("erreurs");%>
>         <h2>Les erreurs suivantes se sont produites</h2>
>         <ul>
>             <%
>                     for (int i =3D 0; i < erreurs.size(); i++) {
>                         out.println("<li>" + (String)erreurs.get(i) + =
"</li>");
>                     }
>             %>
>         </ul>
>     </body>
> </html>
>=20
> <%--=20
>     Document   : bienvenue
>     Created on : 25 mars 2010, 20:41:05
>     Author     : jacquespiotrowski
> --%>
>=20
> <%@page contentType=3D"text/html" pageEncoding=3D"UTF-8"%>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>     "http://www.w3.org/TR/html4/loose.dtd">
>=20
> <html>
>     <head>
>         <meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3DUTF-8">
>         <title>Bienvenue - Authentification Client</title>
>     </head>
>     <body>
>         <%
>                 String identifiant =3D =
(String)request.getAttribute("identifiant");
>                 String motdepasse =3D =
(String)request.getAttribute("motdepasse");
>                 if (identifiant =3D=3D null) {
>                     identifiant =3D "inconnu";
>                 }
>                 if (motdepasse =3D=3D null) {
>                     motdepasse =3D "inconnu";
>                 }
>         %>
>         <center>
>             <h2>Bienvenue, utilisateur <%=3Didentifiant%>, mot de =
passe <%=3Dmotdepasse%></h2>
>         </center>
>     </body>
> </html>
>=20
> 4) et enfin le descripteur de d=E9ploiement:
>=20
> <?xml version=3D"1.0" encoding=3D"UTF-8"?>
> <web-app version=3D"2.5" xmlns=3D"http://java.sun.com/xml/ns/javaee" =
xmlns:xsi=3D"http://www.w3.org/2001/XMLSchema-instance" =
xsi:schemaLocation=3D"http://java.sun.com/xml/ns/javaee =
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
>     <servlet>
>         <servlet-name>servletauthentification</servlet-name>
>         =
<servlet-class>betaboutique.servlets.client.ServletAuthentification</servl=
et-class>
>         <init-param>
>             <param-name>defautIdentifiant</param-name>
>             <param-value>monidentifiant</param-value>
>         </init-param>
>         <init-param>
>             <param-name>defautMotDePasse</param-name>
>             <param-value>monmotdepasse</param-value>
>         </init-param>
>     </servlet>
>     <servlet-mapping>
>         <servlet-name>servletauthentification</servlet-name>
>         <url-pattern>/authentificationclient</url-pattern>
>     </servlet-mapping>
>     <session-config>
>         <session-timeout>
>             30
>         </session-timeout>
>     </session-config>
>     <welcome-file-list>
>         <welcome-file>authentification.html</welcome-file>
>     </welcome-file-list>
> </web-app>
>=20
> J'ai supprim=E9 ce qui me semble une coquille apr=E8s =
</welcome-file-list> : =E7a sent le bug =E0 pleine souris...
>=20
>     <init-param>
>         <param-name>d</param-name>
>         <param-value>m</param-value>
>     </init-param>
>     <init-param>
>         <param-name>defautIdentifiant</param-name>
>         <param-value>monidentifiant</param-value>
>     </init-param>
>=20
> Tout compile bien, se d=E9ploie bien (enfin, j'ai aucun message =
d'anomalie).
>=20
> Merci d'avance de votre aide.
>=20
> PJ=20
>=20
> <ecran.jpg>

Didier Fradet







--Apple-Mail-4--601527644
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=iso-8859-1

<html><head></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space; =
">Bonjour,<div><br></div><div>Dans la page html qui contient le =
formulaire, essaie avec&nbsp;<font class=3D"Apple-style-span" =
face=3D"Courier" size=3D"3"><span class=3D"Apple-style-span" =
style=3D"font-size: 12px;">&lt;form action=3D"./authentificationclient" =
method=3D"post"&gt;</span></font> =E0 la place de&nbsp;<font =
class=3D"Apple-style-span" face=3D"Courier" size=3D"3"><span =
class=3D"Apple-style-span" style=3D"font-size: 12px;">&lt;form =
action=3D"authentificationclient" =
method=3D"post"&gt;</span></font></div><div><br></div><div>Cordialement,</=
div><div><br>Le 27 mars 2010 =E0 21:36, Jacques PIOTROWSKI a =E9crit =
:<br><br><blockquote type=3D"cite">Bonjour,<br><br><br>je bouquine en ce =
moment le livre "Java EE" de J=E9r=F4me Lafosse (ENI) et j'essaie de =
faire fonctionner un exemple d'authentification, mais =E7a ne marche =
pas,<br>la servlet n'est pas trouv=E9e :<br><br>Firefox ne peut trouver =
le fichier =E0 l'adresse =
/Users/jacquespiotrowski/NetBeansProjects/WebAuthentification/authentifica=
tionclient.<br><br>Voici les codes sources. Si quelqu'un =E0 une =
id=E9e...<br><br>1) la page HTML avec son =
formulaire<br><br>&lt;!--<br>&nbsp;&nbsp; &nbsp;Document &nbsp; : =
authentification<br>&nbsp;&nbsp; &nbsp;Created on : 25 mars 2010, =
21:03:32<br>&nbsp;&nbsp; &nbsp;Author &nbsp; &nbsp; : =
jacquespiotrowski<br>--&gt;<br>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD =
HTML 4.01 Transitional//EN"&gt;<br>&lt;html&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;head&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;title&gt;Authentification Client&lt;/title&gt;<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp;&lt;meta http-equiv=3D"Content-Type" =
content=3D"text/html; charset=3DUTF-8"&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/head&gt;<br>&nbsp;&nbsp; &nbsp;&lt;body&gt;<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp;&lt;center&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;&lt;h1&gt;Authentification =
Client&lt;/h1&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;form action=3D"authentificationclient" =
method=3D"post"&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;&lt;table border=3D"1" cellspacing=3D"0" =
cellpadding=3D"5"&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp;&lt;tr&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;td&gt;Identifiant&lt;/td&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;td&gt;&lt;input type=3D"text" name=3D"identifiant" =
id=3D"identifiant" size=3D"20" maxlength=3D"20" =
value=3D""&gt;&lt;/td&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/tr&gt;<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;tr&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;td&gt;Mot de =
passe&lt;/td&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;td&gt;&lt;input =
type=3D"password" name=3D"motdepasse" id=3D"motdepasse" size=3D"20" =
maxlength=3D"20" value=3D""&gt;&lt;/td&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/tr&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp;&lt;tr&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;td =
colspan=3D"2" align=3D"center"&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;input type=3D"submit" name=3D"valider" id=3D"valider" =
value=3D"Valider"&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/td&gt;<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/tr&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;&lt;/table&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/form&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/center&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/body&gt;<br>&lt;/html&gt;<br><br>2) la =
Servlet:<br><br>/*<br>&nbsp;* &nbsp;Document &nbsp; : =
ServletAuthentification<br>&nbsp;* &nbsp;Created on : 25 mars 2010, =
21:03:32<br>Author &nbsp; &nbsp; : =
jacquespiotrowski<br>&nbsp;*/<br>package =
betaboutique.servlets.client;<br><br>import =
java.io.IOException;<br>import java.util.ArrayList;<br><br>import =
javax.servlet.ServletConfig;<br>import =
javax.servlet.ServletContext;<br>import =
javax.servlet.ServletException;<br><br>import =
javax.servlet.http.HttpServlet;<br>import =
javax.servlet.http.HttpServletRequest;<br>import =
javax.servlet.http.HttpServletResponse;<br><br>import =
betaboutique.javabean.Client;<br><br>public class =
ServletAuthentification extends HttpServlet {<br><br>&nbsp;&nbsp; =
&nbsp;String ident =3D null;<br>&nbsp;&nbsp; &nbsp;String mdp =3D =
null;<br>&nbsp;&nbsp; &nbsp;String emailadministrateur =3D =
null;<br>&nbsp;&nbsp; &nbsp;String urlAuthentification =3D =
null;<br>&nbsp;&nbsp; &nbsp;String urlErreurs =3D null;<br>&nbsp;&nbsp; =
&nbsp;String urlBienvenue =3D null;<br><br>&nbsp;&nbsp; &nbsp;public =
void init() {<br><br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;// preparer la =
lecture des informations de configutaion de la servlet<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp;ServletConfig config =3D =
getServletConfig();<br><br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;// lire les =
parametres d'initialisation dans "web.xml"<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;ident =3D (String) =
config.getInitParameter("defautIdentifiant");<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;mdp =3D (String) =
config.getInitParameter("defautMotDePasse");<br><br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;// lire les routes<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;urlAuthentification =3D (String) =
config.getInitParameter("urlAuthentification");<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;urlErreurs =3D (String) =
config.getInitParameter("urlErreurs");<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;urlBienvenue =3D (String) =
config.getInitParameter("urlBienvenue");<br><br>&nbsp;&nbsp; =
&nbsp;}<br><br>&nbsp;&nbsp; &nbsp;public void doGet(HttpServletRequest =
request, HttpServletResponse response)<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp;throws ServletException, IOException =
{<br><br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;// lire les donnees saisies =
dans le formulaire<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;String =
identifiant =3D request.getParameter("identifiant");<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp;String motdepasse =3D =
request.getParameter("motdepasse");<br><br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;// declarer le tableau des erreurs liees au controle de =
saisie<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ArrayList&lt;String&gt; =
erreursParametres =3D new ArrayList&lt;String&gt;();<br><br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp;// pas d'identifiant : retour sur la page =
d'authentification<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (identifiant =
=3D=3D null) {<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if =
(urlAuthentification =3D=3D null) {<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp;throw new ServletException("Le parametre =
urlAuthentification est absent");<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;} else {<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; =
&nbsp;getServletContext().getRequestDispatcher(urlAuthentification).forwar=
d(request, response);<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;}<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;return;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;}<br><br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp;// controler l'identifiant<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;if (identifiant.equals("")) {<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp;erreursParametres.add("Le parametre identifiant est =
vide");<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;}<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;if (!identifiant.matches("^[0-9a-zA-Z]{5,}$")) =
{<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;erreursParametres.add("Le parametre identifiant doit comporter au =
moins 5 signes (0-9, a-z, A-Z)");<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;}<br><br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;// controler le mot de =
passe<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (motdepasse.equals("")) =
{<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;erreursParametres.add("Le parametre mot de passe est =
vide");<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;}<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;if (!motdepasse.matches("^[0-9a-zA-Z]{5,}$")) =
{<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;erreursParametres.add("Le parametre mot de passe doit comporter au =
moins 5 signes (0-9, a-z, A-Z)");<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;}<br><br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;// en cas d'erreur, =
redirection vers l'affichage des erreurs<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;if (erreursParametres.size() &gt; 0) {<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; =
&nbsp;request.setAttribute("erreurs",erreursParametres);<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;getServletContext().getRequestDispatcher("/erreurs.jsp").forward(req=
uest, response);<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;}<br><br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;// v=E9rifier l'=E9galit=E9=
 de la saisie avec les param=E8tres externes<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;// so ok, redirection vers la page de =
bienvenue<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (identifiant!=3Dnull =
&amp;&amp; motdepasse!=3Dnull &amp;&amp; identifiant.equals(ident) =
&amp;&amp; motdepasse.equals(mdp)) {<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp;request.setAttribute(identifiant, =
"identifiant");<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;request.setAttribute(motdepasse, "motdepasse");<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;getServletContext().getRequestDispatcher("/bienvenue.jsp").forward(r=
equest, response);<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;}<br><br>&nbsp;&nbsp; &nbsp;}<br><br>&nbsp;&nbsp; &nbsp;public =
void doPost(HttpServletRequest request, HttpServletResponse =
response)<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;throws =
ServletException, IOException {<br><br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;doGet(request, response);<br><br>&nbsp;&nbsp; =
&nbsp;}<br>}<br><br>3) deux autres pages (JSP) pour afficher les erreurs =
de saisie, ou un message de =
bienvenue:<br><br>&lt;%--&nbsp;<br>&nbsp;&nbsp; &nbsp;Document &nbsp; : =
erreurs<br>&nbsp;&nbsp; &nbsp;Created on : 25 mars 2010, =
21:03:32<br>&nbsp;&nbsp; &nbsp;Author &nbsp; &nbsp; : =
jacquespiotrowski<br>--%&gt;<br><br>&lt;%@page contentType=3D"text/html" =
pageEncoding=3D"UTF-8"%&gt;<br>&lt;%@page =
import=3D"java.util.ArrayList"%&gt;<br>&lt;!DOCTYPE HTML PUBLIC =
"-//W3C//DTD HTML 4.01 Transitional//EN"<br>&nbsp;&nbsp; &nbsp;"<a =
href=3D"http://www.w3.org/TR/html4/loose.dtd">http://www.w3.org/TR/html4/l=
oose.dtd</a>"&gt;<br><br>&lt;html&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;head&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&lt;meta =
http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3DUTF-8"&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;title&gt;Erreurs - Authentification =
Client&lt;/title&gt;<br>&nbsp;&nbsp; &nbsp;&lt;/head&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;body&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&lt;%ArrayList =
erreurs =3D =
(ArrayList)request.getAttribute("erreurs");%&gt;<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;&lt;h2&gt;Les erreurs suivantes se sont =
produites&lt;/h2&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;ul&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;%<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp;for (int i =3D 0; i &lt; erreurs.size(); i++) =
{<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp;out.println("&lt;li&gt;" + =
(String)erreurs.get(i) + "&lt;/li&gt;");<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp;%&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/ul&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/body&gt;<br>&lt;/html&gt;<br><br>&lt;%--&nbsp;<br>&nbsp;&nbsp; =
&nbsp;Document &nbsp; : bienvenue<br>&nbsp;&nbsp; &nbsp;Created on : 25 =
mars 2010, 20:41:05<br>&nbsp;&nbsp; &nbsp;Author &nbsp; &nbsp; : =
jacquespiotrowski<br>--%&gt;<br><br>&lt;%@page contentType=3D"text/html" =
pageEncoding=3D"UTF-8"%&gt;<br>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD =
HTML 4.01 Transitional//EN"<br>&nbsp;&nbsp; =
&nbsp;"http://www.w3.org/TR/html4/loose.dtd"&gt;<br><br>&lt;html&gt;<br>&n=
bsp;&nbsp; &nbsp;&lt;head&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3DUTF-8"&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;title&gt;Bienvenue - Authentification =
Client&lt;/title&gt;<br>&nbsp;&nbsp; &nbsp;&lt;/head&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;body&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;%<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;String identifiant =3D =
(String)request.getAttribute("identifiant");<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;String motdepasse =3D =
(String)request.getAttribute("motdepasse");<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (identifiant =3D=3D null) =
{<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;identifiant =3D "inconnu";<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp;if (motdepasse =3D=3D null) {<br>&nbsp;&nbsp; =
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;motdepasse =
=3D "inconnu";<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;}<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;%&gt;<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;&lt;center&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;h2&gt;Bienvenue, utilisateur &lt;%=3Didentifiant%&gt;, mot de =
passe &lt;%=3Dmotdepasse%&gt;&lt;/h2&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/center&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/body&gt;<br>&lt;/html&gt;<br><br>4) et enfin le descripteur =
de d=E9ploiement:<br><br>&lt;?xml version=3D"1.0" =
encoding=3D"UTF-8"?&gt;<br>&lt;web-app version=3D"2.5" =
xmlns=3D"http://java.sun.com/xml/ns/javaee" =
xmlns:xsi=3D"http://www.w3.org/2001/XMLSchema-instance" =
xsi:schemaLocation=3D"http://java.sun.com/xml/ns/javaee&nbsp;http://java.s=
un.com/xml/ns/javaee/web-app_2_5.xsd"&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;servlet&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;servlet-name&gt;servletauthentification&lt;/servlet-name&gt;<br>=
&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;servlet-class&gt;betaboutique.servlets.client.ServletAuthentific=
ation&lt;/servlet-class&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;init-param&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;param-name&gt;defautIdentifiant&lt;/param-name&gt;<br>&nbsp;&nbs=
p; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;param-value&gt;monidentifiant&lt;/param-value&gt;<br>&nbsp;&nbsp=
; &nbsp; &nbsp; &nbsp;&lt;/init-param&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;init-param&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;param-name&gt;defautMotDePasse&lt;/param-name&gt;<br>&nbsp;&nbsp=
; &nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp;&lt;param-value&gt;monmotdepasse&lt;/param-value&gt;<br>&nbsp;&nbsp;=
 &nbsp; &nbsp; &nbsp;&lt;/init-param&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/servlet&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;servlet-mapping&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;servlet-name&gt;servletauthentification&lt;/servlet-name&gt;<br>=
&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;url-pattern&gt;/authentificationclient&lt;/url-pattern&gt;<br>&n=
bsp;&nbsp; &nbsp;&lt;/servlet-mapping&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;session-config&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;session-timeout&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; =
&nbsp; &nbsp;30<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;/session-timeout&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/session-config&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;welcome-file-list&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;welcome-file&gt;authentification.html&lt;/welcome-file&gt;<br>&n=
bsp;&nbsp; =
&nbsp;&lt;/welcome-file-list&gt;<br>&lt;/web-app&gt;<br><br>J'ai =
supprim=E9 ce qui me semble une coquille apr=E8s =
&lt;/welcome-file-list&gt; : =E7a sent le bug =E0 pleine =
souris...<br><br>&nbsp;&nbsp; &nbsp;&lt;init-param&gt;<br>&nbsp;&nbsp; =
&nbsp; &nbsp; =
&nbsp;&lt;param-name&gt;d&lt;/param-name&gt;<br>&nbsp;&nbsp; &nbsp; =
&nbsp; &nbsp;&lt;param-value&gt;m&lt;/param-value&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;/init-param&gt;<br>&nbsp;&nbsp; =
&nbsp;&lt;init-param&gt;<br>&nbsp;&nbsp; &nbsp; &nbsp; =
&nbsp;&lt;param-name&gt;defautIdentifiant&lt;/param-name&gt;<br>&nbsp;&nbs=
p; &nbsp; &nbsp; =
&nbsp;&lt;param-value&gt;monidentifiant&lt;/param-value&gt;<br>&nbsp;&nbsp=
; &nbsp;&lt;/init-param&gt;<br><br>Tout compile bien, se d=E9ploie bien =
(enfin, j'ai aucun message d'anomalie).<br><br>Merci d'avance de votre =
aide.<br><br>PJ&nbsp;<br><br><span>&lt;ecran.jpg&gt;</span><br></blockquot=
e><br><div>Didier =
Fradet<br><br><br><br><br><br></div><br></div></body></html>=

--Apple-Mail-4--601527644--