Fichier éxécutable Application Web Java

Résolu/Fermé
ccmforum007 Messages postés 67 Date d'inscription jeudi 30 juin 2016 Statut Membre Dernière intervention 16 septembre 2016 - 10 août 2016 à 17:09
ccmforum007 Messages postés 67 Date d'inscription jeudi 30 juin 2016 Statut Membre Dernière intervention 16 septembre 2016 - 13 août 2016 à 12:16
Bonjour,

Suivant un tuto, j'ai créé une application web java que j'ai testé et qui marche.

J'ai utilisé l'EDI Netbeans, au final j'ai un dossier LeNomDeMonProjet qui contient tous les codes sources.

J'ai aussi un fichier LeNomDeMonProjet.war (si je décompresse celui-ci, j'obtiens le dossier départ LeNomDeMonProjet

Je souhaiterai n'envoyer que l'éxécutable de mon projet à un ami pour qu'il le teste chez lui.
Que dois-je faire pour obtenir cet éxécutable ?

Merci d'avance pour vos réponses
A voir également:

1 réponse

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
10 août 2016 à 19:32
Bonjour,

Pour exécuter une application serveur il faut... un serveur. Donc ton ami devra installer un serveur et de préférence le même que toi pour éviter les surprises.
Puis bien sûr tu lui donnes le war pour qu'il le mette sur le serveur installé.
0
ccmforum007 Messages postés 67 Date d'inscription jeudi 30 juin 2016 Statut Membre Dernière intervention 16 septembre 2016
11 août 2016 à 09:06
Bonjour KX, merci pour ta réponse.

Suite à ta réponse je viens de faire une très longue lecture sur la différence entre un serveur web et un serveur d'application web ...

Donc le serveur que mon ami devra installer chez lui c'est Glassfish (c'est celui que j'ai utilisé )?

Juste une deuxième question : le war n'est autre que l'archive de la totalité de mon projet web donc le code source.

Y a-t-il un autre moyen pour ne fournir que l'executable ? (Bytecode)
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
11 août 2016 à 09:29
"la différence entre un serveur web et un serveur d'application web"
En Java il y a également des serveurs web conteneurs de servlet (Tomcat, Jetty) qui peuvent suffire à exécuter un war. Mais selon les technologies que tu as utilisé passer sur un serveur d'application peut effectivement être nécessaire, donc Glassfish dans ton cas, même s'il peut éventuellement fonctionner sur n'importe quel autre serveur (si tu restes sur de la config standard)

"le war n'est autre que l'archive de la totalité de mon projet web donc le code source"
Non, les classes sont compilées dans le war, mais en Java même compilées on peut lire un équivalent du code source en décompilant le bytecode. Si tu veux vraiment masquer le code tu peux envisager de faire de l'obfuscation.
0
ccmforum007 Messages postés 67 Date d'inscription jeudi 30 juin 2016 Statut Membre Dernière intervention 16 septembre 2016 > KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024
11 août 2016 à 11:20
Merci pour tous ces éclaircissements, tout est bien clair.

Mais alors comment font les editeurs de logiciel pour produire des fichiers directement executables ?
(Exemple les .exe , les autres executables où il suffit de double-cliquer dessus ...)

Ce sont des codes obfusqués ?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
11 août 2016 à 13:48
Il ne faut pas tout confondre.

Les "executables où il suffit de double-cliquer dessus" ce sont des clients lourds autonomes.

Toi tu parles d'un serveur d'application, l'architecture est très différente.

Les éditeurs qui ont besoin d'un serveur le font tourner chez eux, donc pas besoin d'obfuscation, l'utilisateur n'y a jamais accès.

L'utilisateur lance un client (lourd ou léger selon) qui se connecte sur le serveur de l'hébergeur. À la limite peu importe que le client soit offusqué ou non puisque de toute façon la vraie intelligence du programme est sur le serveur (inaccessible).

Remarque : un .exe ce n'est pas du Java, le programme est compilé avec des instructions bas niveau uniquement compréhensible par Windows.

En Java tu auras du bytecode (décompilable, parfois obfusqué) interprété par la JVM (qui doit préalablement être installé sur le poste utilisateur).
0
ccmforum007 Messages postés 67 Date d'inscription jeudi 30 juin 2016 Statut Membre Dernière intervention 16 septembre 2016 > KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024
13 août 2016 à 12:16
Merci beuacoup KX, après plusieurs recherches sur l'architecture de chaque technologie utilisée, je me rend compte que j'ai fais beaucoup de confusions entre serveur web, serveur application web. Grâce à tes explication je comprends où était mes erreurs.

Thank you
0