Ecrire un client serveur Echo acceptant de
multiples clients en non-bloquant
en utilisant pour cela un sélecteur
(java.nio.channels.Selector).
Pour simplifier le développement, le serveur ne possèdera
qu'une unique thread et dans un premier temps,
on considérera
Ré-écrire le proxy TCP en utilisant les sélecteurs. Il faudra penser à s'enregistrer en connect lors de l'établissement de la connection avec le serveur.
Écrire un petit programme Java qui permet d'émuler un serveur HTTP
très simple en ré-utilisant le serveur TCP avec un pool de threads.
Voici les fonctionnalités qui doivent être implantées par
ce petit serveur:
Ajouter au serveur précédent la fonctionnalité suivante: lorsqu'une ressource recherchée par un client n'est pas un fichier régulier, et que le serveur n'est pas en mesure de la retourner, renvoyer un message d'erreur 404 Not Found accompagné d'une page HTML expliquant poliment que la ressource n'est pas accessible.
Utiliser le formulaire ci-dessous pour regarder ce qu'envoit un browser lors POST sur un formulaire.
<html> <body> <h1>Enquête de satisfaction</h1> <h4>Merci de remplir le questionnaire suivant:</h4> <form enctype="application/x-www-form-urlencoded" action="/enquete" method="POST"> Votre nom : <input type="text" name="lastname" value="" size="20"><br> Votre prénom : <input type="text" name="firstname" value="" size="20"><br> Concernant la matière : <select name="thema"> <option value="Électronique">Électronique <option value="Java">Java <option value="Java Réseau">Java Réseau <option value="Java Avancé">Java Avancé <option selected value="Java Réseau Avancé">Java Réseau Avancé </select>, vous vous estimez :<br> Mécontent <input type="radio" name="satisfied" value="10"><br> Assez content <input type="radio" name="satisfied" value="20"><br> Content <input type="radio" name="satisfied" value="30"><br> Très content <input checked type="radio" name="satisfied" value="40"><br> <Input type="submit" value="Envoyer"> <input type="reset" value="Réinitialiser"> </form> </body> </html>