Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1288 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Exécuter du code java quand je clique sur le bouton HTML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Exécuter du code java quand je clique sur le bouton HTML

n°1917041
gillin
Posté le 20-08-2009 à 13:31:54  profilanswer
 

Bonjour,
j'ai le soucis suivant:
Dans une page HTML, je souhaiterai que lorsque l'on appuie sur un bouton précis, une fonction java s'éxécute pour vérifier l'existence ou non d'un process précis sur le serveur unix, et selon le code retour de la fonction poursuivre le traitement HTML courant.  
En somme, je voudrais insérer un appel java dans du code JSP existant.
J'ai mis le code java dans une fonction javascript mais le code HTML généré est figé alors que je voudrais que l'appel soit dynamique.
Comment je peux faire cela ?
Merci

mood
Publicité
Posté le 20-08-2009 à 13:31:54  profilanswer
 

n°1917052
Deamon
Posté le 20-08-2009 à 13:57:01  profilanswer
 

C'est le J2EE en fait ton souci non ?
Car c'est exactement son rôle : exécuter des fonctions sur le serveur et retourner la réponse.

n°1917058
gillin
Posté le 20-08-2009 à 14:05:19  profilanswer
 

J'ignore le nom de mon soucis mais je sais qu'il existe.
Si tu as compris mon soucis aurais-tu une façon de le régler stp ?

n°1917059
Deamon
Posté le 20-08-2009 à 14:07:15  profilanswer
 

Ca fait 1 an que je n'ai pas fait de J2EE donc je ne sais plus. Mais il faut une servlet et t'appelles une de ses fonctions depuis ta JSP. Mais c'est le B.A.BA du J2EE donc regarde n'importe quel cours pour débutant dessus.

n°1917693
Flaie
No it's necessary
Posté le 23-08-2009 à 22:06:59  profilanswer
 

C'est pas avec javascript que tu vas pouvoir faire ça.
Ton bouton html doit simplement appeler une servlet (via un formulaire html ou via ajax ou ce que tu veux) qui s'occupera de vérifier l'existence de ton process via la classe Runtime et l'utilitaire ps ou top ou autre.
Javascript te servira si tu veux faire ça sans changement de page (à l'ajax).
 
Du coup tu peux paramétrer via ton bouton (attribut value du input html) le critère de recherche du process sur ton serveur unix, en le récupérant dans ta servlet (objet HttpServletRequest) et en le passant à ps / top.


---------------
Always wear a camera!
n°1921561
cbeyls
Hail to the King, Baby
Posté le 05-09-2009 à 21:10:50  profilanswer
 

gillin a écrit :

En somme, je voudrais insérer un appel java dans du code JSP existant.
J'ai mis le code java dans une fonction javascript mais le code HTML généré est figé alors que je voudrais que l'appel soit dynamique.


 
Je pense que tu mélanges tout. Si tu utilises une page JSP et que tu veux mettre l'appel Java dans la JSP, ça n'a rien avoir avec le code Javascript qui s'exécute uniquement du côté client; le Javascript n'a rien avoir avec le Java et on ne peut pas mettre de code Java dans du Javascript.
 
Il faut qu'en appuyant sur le bouton, ta page HTML poste une requête via un formulaire, requête que tu identifies alors dans le code Java d'une page JSP ou d'une Servlet, et ensuite tu lances l'action côté serveur.
 
Éventuellement tu peux également faire qu'un clic sur le bouton, au lieu d'envoyer un formulaire, lance une requête XMLHttpRequest (ce qu'on appelle une requête "Ajax" et là c'est effectivement du Javascript qui sert uniquement à faire une requête HTTP sur le serveur), ce qui permet d'éviter de recharger la page. La requête HTTP doit communiquer elle aussi avec une JSP ou une Servlet côté serveur qui va traiter la demande et lancer l'action.

n°1921790
pataluc
Posté le 07-09-2009 à 11:06:28  profilanswer
 

Merci de déterrer ce post. Il mélange effectivement tout, mais pour ton info, on peut mettre des appels java dans du javascript, au moins sous firefox:
 

Code :
  1. <html>
  2.  <head>
  3.  <title></title>
  4.    <script type="text/javascript">
  5.      function alertDate() {
  6.        alert(new java.text.SimpleDateFormat("yyyy.MM.dd" ).format(new java.util.Date()));
  7.      }
  8.    </script>
  9.    
  10.  </head>
  11.  <body>
  12.    <a href="javascript:alertDate()">Appel Java via javascript</a>
  13.  </body>
  14. </html>

n°1922067
cbeyls
Hail to the King, Baby
Posté le 08-09-2009 à 04:58:47  profilanswer
 

Effectivement, on peut dans certains navigateurs appeler des fonctions Java du JRE à partir du code Javascript. Ton code d'exemple ne fonctionnera que dans Firefox et Opera à ma connaissance. Bien sûr pour cela il faut qu'un JRE soit installé sur la machine et accessible au navigateur web.
 
Mais, nuance, il s'agit d'appeler des fonctions Java avec du code Javascript et non mélanger du code Java et du Javascript. Ton exemple n'est pas du code Java avec la syntaxe Java, cela reste des simples appels Javascript, vers des objets et fonctions Java, certes, mais en langage Javascript.
 
Ce qui veut dire qu'avec la syntaxe Javascript autorisée dans une page web tu ne peux pas utiliser les fonctions propres au langage Java, par exemple:
- Ecrire une déclaration de classe ou d'interface
- Utiliser l'opérateur for amélioré pour les itérations: for(MonType o : collection) {...}
- Utiliser les types génériques
- Considérer une chaîne de caractères littérale comme un objet java: if("toto".equals(b)) {...}
- Déclarer des variables typées: int a, boolean b, ... Javascript n'est pas typé.
- Rendre certaines variables et fonctions publiques et d'autres privées
- Etc., etc.
 
En bref on ne peut pas mettre de code Java dans une page web, seulement des appels de code Java via la syntaxe Javascript. Et encore cela ne fonctionne pas dans tous les navigateurs web.

Message cité 1 fois
Message édité par cbeyls le 08-09-2009 à 05:01:27
n°1922088
pataluc
Posté le 08-09-2009 à 09:55:57  profilanswer
 

cbeyls a écrit :

Mais, nuance, il s'agit d'appeler des fonctions Java avec du code Javascript et non mélanger du code Java et du Javascript. Ton exemple n'est pas du code Java avec la syntaxe Java, cela reste des simples appels Javascript, vers des objets et fonctions Java, certes, mais en langage Javascript.


ya pas de nuance. c'est exactement ce que j'ai dit: "on peut mettre des appels java dans du javascript". je n'ai jamais dit qu'on pouvait mélanger les 2.


Message édité par pataluc le 08-09-2009 à 09:57:16

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Exécuter du code java quand je clique sur le bouton HTML

 

Sujets relatifs
Code jvs qui fonctionne sous IE 6 et 7 mais pas 8 et Google Chrome[HTML]Détecter JVM microsoft ou sun
Bouton Supprimer ... fonctionne pas ...verification code chargement java appelant un fichier prolog via jpl
Executer macro d'un fichier dans un autreProbleme de code java /LDAP
implémenter et créer un arbre en java[Résolu] Placer le code source d'une page web en buffer (Winnet)
Plus de sujets relatifs à : Exécuter du code java quand je clique sur le bouton HTML


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR