2016-09-19 4 views
1

J'ai besoin d'ouvrir une application Java Swing côté client lors de l'appel d'une servlet. Peu d'arguments doivent également être reçus à la méthode principale de cette application Swing qui est ouverte via JNLP à un navigateur client. Dans mon cas, l'application swing est ouverte, mais aucun argument ne sera reçu de toute façon.Comment passer des arguments à l'application Swing lancée par JNLP?

Mon fichier JNLP n'est pas construit dynamiquement. C'est un fichier statique. Le voici:

<?xml version="1.0" encoding="utf-8"?> 
<jnlp spec="1.0+" 
     codebase="http://localhost:8085/TestWebApp" 
     href="ContactEditor.jnlp"> 

    <information> 
     <title>JNLP Example</title> 
     <vendor>Catalyst Software</vendor> 
     <homepage href="http://localhost:8085/TestWebApp" /> 
     <description>JNLP Testing</description> 
    </information> 

    <security> 
     <all-permissions/> 
    </security> 

    <resources> 
     <j2se version="1.6+" /> 
     <jar href="ContactEditor.jar" /> 
    </resources> 

    <application-desc main-class="my.contacteditor.ContactEditorUI"> 
     <argument>00001</argument> 
     <argument>Harish Prasad</argument> 
     <argument>220153429088</argument> 
    </application-desc>  

    <security> 
     <all-permissions/> 
    </security> 

</jnlp> 

Veuillez suggérer comment passer dynamiquement des arguments de la servlet à l'application swing.

Mes questions sont les suivantes:

  1. Quel code dois-je écrire à mon programme Swing?
  2. Que dois-je mentionner dans le fichier JNLP?
  3. Comment devrais-je transmettre les valeurs du servlet?
+1

Assurez-vous de vérifier la JNLP en utilisant Janela, disponible à mon [lecteur de partage] (https://drive.google.com/drive/#folders/0B5B9wDXIGw9lUnJaUjA2cmlVRE0). Notez que JNLP ci-dessus a deux '' éléments .. –

Répondre

2
  1. Le JNLP File Syntax spécifie que "Chaque argument contient (pour) un argument supplémentaire à passer à main."

    public static void main(String[] args) { 
        for (String value : args) { 
         … 
        } 
    } 
    
  2. Votre <argument> syntaxe apparaît correcte, comme indiqué ; l'élément <security> apparaît deux fois, comme indiqué here; vérifier la syntaxe comme indiqué here par @AndrewThompson.

  3. Vous aurez besoin de construire le fichier JNLP dynamiquement, comme indiqué here.

+1

* "syntaxe semble correcte" * L'élément '' apparaît deux fois. –

+0

@AndrewThompson: Merci pour votre critique; J'étais trop concentré sur la syntaxe ''. Merci également de faire un lien vers 'JaNeLA'. Y a-t-il un Q & A canonique qui le cite? Je serais heureux de modifier les liens brisés si vous le souhaitez. – trashgod

+0

* "Y at-il un Q & A canonique qui le cite?" * La plupart de mes Q & R canoniques ont été (fortement mis à jour mais) fermés. Effrayé que l'on puisse attirer des accusations de «spam». :( –