IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI et Outils pour Java Discussion :

[izPack] Définition de UserInputPanel


Sujet :

EDI et Outils pour Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de sozie9372
    Inscrit en
    Mai 2005
    Messages
    713
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 713
    Par défaut [izPack] Définition de UserInputPanel
    Salut !
    Voila, j'ai un pti problème avec isPack, j'ai crée mon installeur, mais j'aimerai maintenant pouvoir ajouter un champ de saisie d'adresse ip...
    Bref, j'ai défini mon UserInputPanel comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    		<field type="rule" variable="ipaddress">
    			<description align="left" txt="Paramètres de connexion du serveur "
    			id="description.rule.1"/>
    			<spec txt="Adresse IP"
    			layout="N:3:3 . N:3:3 . N:3:3 . N:3:3"
    			resultFormat="specialSeparator" separator="."/>
    			<validator class="com.izforge.izpack.util.RegularExpressionValidator" txt="Pas bon l'adresse !">
    			<param name="pattern" value="[01]?\d\d?|2[0-4]\d|25[0-5]"/>
    			</validator>
    			<processor class="IPGetter"/>
    		</field>
    J'ai défini une classe tout simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class IPGetter {
    	public IPGetter() {
    		System.out.println("coucou!");
    		javax.swing.JOptionPane.showMessageDialog(null, "coucou !");
    	}
    	public IPGetter(String txt) {
    		System.out.println(txt);
    		javax.swing.JOptionPane.showMessageDialog(null, txt);
    	}
    }
    Et pour ce qui est du traitement du contenu du champ (l'adresse ip en soit), je me suis référé à la documentation et j'ai trouvé :
    6.11.5 Processing the Field Content
    This feature needs to be documented.
    Est-ce que quelqu'un de plus aguéri a réussi à pallier à ce manque ?

  2. #2
    Membre émérite Avatar de sozie9372
    Inscrit en
    Mai 2005
    Messages
    713
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 713
    Par défaut
    Bon après moult recherches et en utilisant des exemples trouvés ici et là, j'ai trouvé (au cas où ca intersse qqn) :
    install.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <resources>
    ...
    	<res id="ProcessPanel.Spec.xml" src="ProcessPanel.Spec.xml"/>
    ...
    </resources>
    <panels>
    ...
    	<panel classname="ProcessPanel"/>
    ...
    </panels>
    <packs>
    	<pack name="Fichiers requis" required="yes">
    		<description>Fichiers requis pour L'application.</description>
    		<fileset dir="" targetdir="$INSTALL_PATH">
    ...
    			<include name="IPGetter.class" />
    ...
    		</fileset>
    		<singlefile src="loadProperties.bat" target="$INSTALL_PATH\loadProperties.bat" />
    		<parsable targetfile="$INSTALL_PATH\loadProperties.bat"/>
    	</pack>
    </packs>
    Le fichier ProcessPanel.Spec.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <processing>
        <job name="Chargement des propriétés">
            <os family="windows" />
            <executefile name="$INSTALL_PATH\loadProperties.bat">
    		<arg>$ipaddress</arg>
    	</executefile>
        </job>
    </processing>
    Le fichier loadProperties.bat :
    Le fichier IPGetter.java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    public class IPGetter {
            String ip = null;
    	public IPGetter() {
    		this.ip = "127.0.0.1";
    	}
    	public IPGetter(String txt) {
    		this.ip = txt;
    	}
     
            public void saveIP() {
                    //Save the current ip address in the properties file...
            }
    	public static void main(String[] args){
                    IPGetter ig = null;
    		if(args.length!=1) {
    			ig = new IPGetter();
    		} else {
            		ig = new IPGetter(args[0]);
                    }
                    ig.saveIP();
    	}
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 21
    Dernier message: 09/08/2007, 11h46
  2. Réponses: 2
    Dernier message: 29/07/2003, 12h52
  3. [Sybase] Définition des symboles
    Par SoaB dans le forum Sybase
    Réponses: 5
    Dernier message: 19/03/2003, 23h06
  4. Définition de "Métalangage"
    Par No dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 19/07/2002, 14h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo