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

  FORUM HardWare.fr
  Programmation
  Java

  [java] Pb: transformer IHM en applet

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[java] Pb: transformer IHM en applet

n°489652
sentenz
Posté le 17-08-2003 à 19:51:35  profilanswer
 

Salut tlm,
 
Pour mon memoire (Web Services), j'ai fait une appli de gestion de compte bancaire, le truc vraiment simple.
Mon IHM contient une petite quinzaine de JFrame (Swing).
Tout roule impec...
Je voudrais que les utilisateurs accèdent à mon appli via leur navigateur,
il faut donc ke je transforme mon IHM en applet  
mais je ne sais pas trop comment m'y prendre.
 
La classe qui lance l'IHM est la classe "Accueil.java" dont voici une partie du code:
 

Code :
  1. public class Accueil extends JFrame implements ActionListener{
  2. private JButton btn_valid, btn_quit, btn_admin;
  3. private JTextField val_login;
  4. private JPasswordField val_passwd;
  5. protected int idclient = 0;
  6. private static String endpoint = ""; // Localisation du Web Service
  7. private static String serviceName = ""; // Nom du Web Service
  8. public Accueil(){
  9.  setSize(450, 210);
  10.  setTitle("Accueil" );
  11.  JPanel loginPane = new JPanel();
  12.  JLabel label_login = new JLabel("Votre login: ", JLabel.CENTER);
  13.  val_login = new JTextField(20);
  14.  loginPane.add(label_login);
  15.  loginPane.add(val_login);
  16.  JPanel passwdPane = new JPanel();
  17.  JLabel label_passwd = new JLabel("Votre password: ", JLabel.CENTER);
  18.  val_passwd = new JPasswordField(20);
  19.  val_passwd.setEchoChar('*');
  20.  passwdPane.add(label_passwd);
  21.  passwdPane.add(val_passwd);
  22.  JPanel boutonPane = new JPanel();
  23.  btn_quit = new JButton("Quitter" );
  24.  btn_valid = new JButton("Valider" );
  25.  boutonPane.add(btn_quit);
  26.  boutonPane.add(btn_valid);
  27.  JPanel adminPane = new JPanel();
  28.  btn_admin=new JButton("Administrateur" );
  29.  adminPane.add(btn_admin);
  30.  btn_quit.addActionListener(this);
  31.  btn_valid.addActionListener(this);
  32.  btn_admin.addActionListener(this);
  33.  Container contentPane=getContentPane();
  34.  contentPane.setLayout(null);
  35.  contentPane.add(loginPane);
  36.  contentPane.add(passwdPane);
  37.  contentPane.add(boutonPane);
  38.  contentPane.add(adminPane);
  39.  loginPane.setBounds(90, 30, 300, 30);
  40.  passwdPane.setBounds(60, 60, 330, 30);
  41.  boutonPane.setBounds(162, 90, 160, 30);
  42.  adminPane.setBounds(0, 150, 130, 30);
  43.  setLocation(300, 300);
  44.  show();
  45.  addWindowListener(new WindowAdapter(){
  46.   public void windowClosing(WindowEvent e) {
  47.    System.exit(0);
  48.   }
  49.  });
  50. }
  51. public static void main(String[] args) {
  52.  JFrame FrameClient = new Accueil();
  53. }
  54. public void actionPerformed(ActionEvent evt){
  55.  if (evt.getSource() instanceof JButton){
  56.   if (evt.getSource() == btn_quit)
  57.    System.exit(0);
  58.   else if (evt.getSource() == btn_valid)
  59.    valider();
  60.   else if (evt.getSource() == btn_admin)
  61.    AdminForm();
  62.  } //Fin if
  63. }
  64.         //Ouvre la JFrame AdminLogin
  65. public void AdminForm(){
  66.  new AdminLogin(this);
  67.  this.hide();
  68. }


 
Cette JFrame donne ca:
 
ftp://anonymous@sentenz.dyndns.org/Accueil.png
 
Quand on clique le bouton "Administrateur", la JFrame "AdminLogin" s'ouvre.
 
Enfin bref, que dois-je faire??
Faire hériter ma classe "Accueil" de JApplet et toutes les autres classes les faire hériter de JPanel?
Si oui, comment faire pour supprimer l'affichage de ma classe "Accueil" et faire apparaitre celui de ma classe "AdminLogin"?
 
Si ce n'est pas la methode a suivre, je vois pas comment faire.
Merci pour votre aide
 
P.S: Vous l'aurez compris, je suis un peu un newb dans les applets... j'ai reussi à transformer ma classe "Accueil" en appplet ms j'arrive pas à appeller ma classe "AdminLogin".


Message édité par sentenz le 17-08-2003 à 20:37:30
mood
Publicité
Posté le 17-08-2003 à 19:51:35  profilanswer
 

n°489983
ozark74
Posté le 18-08-2003 à 09:45:55  profilanswer
 

as-tu considéré l'option WebStart http://java.sun.com/products/javawebstart/
ca te permettrait d'avoir ton application disponible à partir d'un browser ("Java Web Start -- a technology for simplifying deployment of Java applications-- gives you the power to launch full-featured applications with a single click from your Web browser." )  sans devoir la transformer en applet.
 

n°490135
sentenz
Posté le 18-08-2003 à 11:59:42  profilanswer
 

je viens de lire la page sur Java Web Start...
Est-ce les futurs utilisateurs seront obligés de le telecharger??
Si oui, ca m'interesse pas trop...
Surtout que je pense avoir reussi à transformer mon appli en applet, faut juste jouer avec le Container de l'applet afin de faire apparaitre les différents formulaires (faut juste ke je transforme toutes mes JFrame (sauf celle ki lance mon appli) en JPanel)
 
Mais merci quand mm ozark74. :D

n°490150
darklord
You're welcome
Posté le 18-08-2003 à 12:18:27  profilanswer
 

sentenz a écrit :


Est-ce les futurs utilisateurs seront obligés de le telecharger??
Si oui, ca m'interesse pas trop...


 
inclus en standard dans les nouvelles versions du JRE AFAIK. Ton applet tournant en SWING, tes clients seront obligés d'installer le JRE de toute façons ..


---------------
Just because you feel good does not make you right
n°490159
sentenz
Posté le 18-08-2003 à 12:27:00  profilanswer
 

ok, c'est noté...
 
J'ai une autre petite question.
Etant donné que mon client (IHM) fait appel à des Web Services, j'ai besoin d'avoir qq .jar d'Axis
Qd j'aurais fait mon applet (je pense que je vais faire l'Applet histoire de tater un peu de l'Applet :D), et générer le .jar,
comment je pourrais faire pour inclure les librairies que j'aurai besoin dans mon Applet.jar??
On peut inclure des jar dans des jar??


Message édité par sentenz le 18-08-2003 à 12:28:09
n°490202
ozark74
Posté le 18-08-2003 à 13:48:22  profilanswer
 

Citation :

Qd j'aurais fait mon applet (je pense que je vais faire l'Applet histoire de tater un peu de l'Applet :D), et générer le .jar,  
comment je pourrais faire pour inclure les librairies que j'aurai besoin dans mon Applet.jar??  
On peut inclure des jar dans des jar??


 
le plus simple est de spécifier les jars nécessaires dans le tag <applet> de la page html qui contient ton applet
style :  
 

Code :
  1. <APPLET
  2. ARCHIVE="axis.jar,xalan.jar,crimson.jar"
  3. CODE="com.machin.truc.MyApplet.class"
  4. WIDTH=500
  5. HEIGHT=600>
  6. </APPLET>


Message édité par ozark74 le 18-08-2003 à 13:49:42
n°490221
ozark74
Posté le 18-08-2003 à 14:09:21  profilanswer
 

DarkLord a écrit :


 
inclus en standard dans les nouvelles versions du JRE AFAIK. Ton applet tournant en SWING, tes clients seront obligés d'installer le JRE de toute façons ..


 
Par ailleurs autre petit plus pour Web Start, l'utilisateur ne doit utiliser son browser que la première fois qu'il utilise (et installe) l'application. Ensuite il accèdera à l'application via un raccourci qui aura été installé sur son bureau et/ou menu démarrer.
 
A chaque démarrage de l'application Web Start va vérifier si il n'y a pas une nouvelle version de l'application disponible sur le server. Si nouvelle version alors download de la nouvelle version.

n°490235
sentenz
Posté le 18-08-2003 à 14:27:04  profilanswer
 

Autre petit pb, c'est ke "axis.jar" pèse environ 1.2 Mo.
Est-ce ke je peux ouvrir ce .jar et mettre dans mon applet.jar seulement les classes k'il a besoin pour faire les appels distants genre les classes "Call" et "Service" (et peut-etre qq autre, je sais plus...)

n°490237
darklord
You're welcome
Posté le 18-08-2003 à 14:29:15  profilanswer
 

sentenz a écrit :

Autre petit pb, c'est ke "axis.jar" pèse environ 1.2 Mo.
Est-ce ke je peux ouvrir ce .jar et mettre dans mon applet.jar seulement les classes k'il a besoin pour faire les appels distants genre les classes "Call" et "Service" (et peut-etre qq autre, je sais plus...)


 
je doute de la légalité de l'affaire :o
a mon avis tu ne peux pas redistribuer une partie du code mais il faudrait confirmer.
 
Sinon regarde chez axis si ils n'ont pas une version 'client' de leur distribution, plus légère


---------------
Just because you feel good does not make you right
n°490254
ozark74
Posté le 18-08-2003 à 14:37:53  profilanswer
 

sentenz a écrit :

Autre petit pb, c'est ke "axis.jar" pèse environ 1.2 Mo.


 
ce jar ne sera downloadé que la première fois que les clients se connecteront, donc je pense pas que ce soit dramatique dramatique.

mood
Publicité
Posté le 18-08-2003 à 14:37:53  profilanswer
 

n°490259
benou
Posté le 18-08-2003 à 14:41:44  profilanswer
 

si je dis pas de bétise, avec axis il faut aussi tout un tat d'autre jar, genre xerces qui est assez corpulent aussi ...


---------------
ma vie, mon oeuvre - HomePlayer
n°490260
darklord
You're welcome
Posté le 18-08-2003 à 14:43:46  profilanswer
 

benou a écrit :

si je dis pas de bétise, avec axis il faut aussi tout un tat d'autre jar, genre xerces qui est assez corpulent aussi ...


 
effectivement :jap:


---------------
Just because you feel good does not make you right
n°490286
sentenz
Posté le 18-08-2003 à 15:00:46  profilanswer
 

Si je comprends bien ce ke vous me dites,
c'est ke ca sert a rien ke je me casse les bonbons a faire une applet (le but étant de ne pas passer sur chq poste client) car de toute facon, faudra ke chq client ait les lib axis...
J'ai bon ou pas?? :sweat:
 
Parce ke mm si je fais l'applet, ca le fait pas trop cote optimisation de dwl 10 Mo (axis) mm si c'est a faire ke lors du 1er appel...
 
(En tout cas, merci de votre contribution :jap: )


Message édité par sentenz le 18-08-2003 à 15:01:38
n°490291
benou
Posté le 18-08-2003 à 15:02:30  profilanswer
 

et ca encore c'est à condition quil ne doivent pas aussi installé la JRE ! ;)


---------------
ma vie, mon oeuvre - HomePlayer
n°490304
darklord
You're welcome
Posté le 18-08-2003 à 15:05:45  profilanswer
 

sentenz a écrit :

Si je comprends bien ce ke vous me dites,
c'est ke ca sert a rien ke je me casse les bonbons a faire une applet (le but étant de ne pas passer sur chq poste client) car de toute facon, faudra ke chq client ait les lib axis...
J'ai bon ou pas?? :sweat:


 
bah ils vont pas les inveter les classes axis hein :heink:


---------------
Just because you feel good does not make you right
n°490321
sentenz
Posté le 18-08-2003 à 15:18:23  profilanswer
 

Petite précision (ki a son importance :) )
Cette appli ne sera jamais utilisé "pour de vrai"
C'est juste pour pouvoir montrer qqch lors de la soutenance de mon mémoire, c'est pour ca ke j'ai l'air un peu indécis quant à la solution à choisir.
Vu ke ca sera ke pour ma soutenance, je vais faire l'applet (mm si il faut dwl les 10 Mo, je le ferai avant komm ca, ca sera invisible pour le(s) futur(s) user)
 
Une autre petite question pour ceux ki ont deja developpé des Web Services:
Est-ce ke vous avez deja utilisez les lib d'Apache ou d'IBM pour faire du XML Signature ou du XML Signature??
J'ai regarder du coté d'Apache, c'est un peu la misere, j'ai pas trop pigé.

n°490506
veryfree
Posté le 18-08-2003 à 18:18:19  profilanswer
 

Pour ce qui est de l'applet voila ce que j'ai fait (je sais pas si c'est la meilleur solution)
 
tu crée une classe qui herite de JApplet
dans cette classe:
 
// ici tu recupere toute sorte de variables de la balise <applet>
TonAppliFrame app = new TonAppliFrame();
 
getContentPane().add(app.getContentPane(),"Center" );
 


Message édité par veryfree le 18-08-2003 à 18:21:36
n°490922
sentenz
Posté le 19-08-2003 à 09:38:16  profilanswer
 

veryfree> ok, je vais test
thxs


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

  [java] Pb: transformer IHM en applet

 

Sujets relatifs
Application Java et Single Document Interface : besoin d'aideComparatifs entre java, php, asp, jsp ?
[Java/Jsp/Struts] Sélection d'un radio bouton par défaut....Profilage d'appli en java
solution pour transformer les é en &eacute;Afficher l'année courante en java scripte ?
Java et architecture 64 bitsChat en JAVA ( avec serveur en Servlet ?? )
[java] Pb de multiplication de double ?????Java + XML + Crystal Reports9 dev ----> Cherrytree, tu es là ?
Plus de sujets relatifs à : [java] Pb: transformer IHM en applet


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