Prog réseau

Pour un stage, j’aimerai développé un prog réseau pour graver des CD sur un serveur Linux : on met le CD dans le graveur et depuis le Client Windows, on copie les fichiers dans le répertoire Linux prévu pour et puis tjrs depuis le client, on lui dit de graver .

J’aimerai faire ca grace à une interface dans un browser mais je ne sais pas si c’est réalisable. Est-ce que ca serait possible avec les JSP ? On peut lancer des programmes externes avec du Java ?
Ou alors, deuxièmes solutions, j’écris moi même le server en C, il ne devrait pas y avoir bcp de problème dans ce cas la.
Il reste le problème du client, est-ce qu’il est tjrs possible de passer par le browser pour servir de client ? Ca m’embête d’en écrire moi-même, car je n’ai pas de connaissance en programmation windows hors C# et Java et je n’ai pas trop envie d’installer de JVM sur les clients. (Si il n’y a pas d’autre solution, je le ferai)

Bon je sais que c’est une question assez pointu, si personne ne peut m’aider, c’est pas grave, je trouverai par moi-même.

Voilà, en gros. Note quand même que tu dois pouvoir modifier le degré de sécurité sur le serveur JSP si celui-ci est trop important. Enfin normalement, il ne devrait pas y avoir de problème.

Pour la création de modules Apache, il faut le faire en C (ou en C++) puisque c’est le langage utilisé par les developpeurs d’Apache. Ou alors avec un langage permettant d’inclure des headers C via des pragma. Tu trouveras ton bonheur ici, ici et sur Google bien sûr :wink:

[Edité le 2/2/2003 par universal_tonton]

Merci pour ces précisions, donc normalement en Java il ne devrait pas y avoir de problème si j’utilise les JSP ou si la sécurité est trop grande un server programmer par moi même. Pour ce qui est du protocole HTTP, aucun problème, je suis en train de développer un server Web en ce moment même pour mon cours de réseau.

Sinon je vais aussi chercher des infos pour signaler à l’utilisateur quand le CD aura fini d’être graver, tu parles d’un rafraichissement toutes les X secondes, si les intervalles ne sont pas trop courtes (genre 30sec), je pense que ca ne sera pas trop crade.

Pour le module Apache, je n’ai aucune connaissance, tu pourrais pas m’éclairer en me donnant quelques infos et pages web. Comment ca marche, ca utilise quelles technologies ou langages ? Ca m’intéresse vraiment et j’aime analyser toutes les solutions avant de me lancer.

[quote]Ou alors, version top moumoute,[/quote]Juste envie de citer cette expression , quelle classe . :wink:

Pas de problème pour executer un programme externe en Java, tu peux utiliser la méthode exec(…) de la classe Runtime. Par contre, il faut voir s’il n’y a pas, par défaut, un SecurityManager plus strict pour les servlets que pour les applis stand-alone. Dans ce cas, il faudra que tu configures le truc pour que ça marche.

Si tu veux créer ton propre serveur, ça ne pose pas de problème non plus. Il suffit juste que ton serveur écoute sur un port différent du 80 si tu as déjà un serveur Web qui tourne, et qu’il soit capable de parler en HTTP (http://www.salemioche.com si tu sais pas). Ainsi, admettons que ton serveur écoute sur le 12000, les clients se connecteront avec leur browser sur http://tonserveur:12000 et ça rulaizera :wink:

Ou alors, version top moumoute, tu créer un module pour Apache avec une extension de fichier associée, .zgoblin par exemple :). Comme ça, dès qu’Apache reçoit une requete sur un fichier .zgoblin, ben il la transmet à ton module, qui la traite (lance la gravure quoi) et qui repasse la main à Apache pour écrire la sortie (genre « gravure en cours », etc…). Comme ça tu évites la partie chiante, cad la programmation HTTP.

Par contre, si tu fais ça par le Web, ça ne va pas être pratique pour signaler à l’utilisateur les « événements », puisqu’aucune requête, à part celle du début de gravure, ne sera envoyée, et donc, aucune page demandée. tu peux faire une page qui se rafraichit toutes les X secondes, mais je trouve cette méthode particulièrement crade.