Bonjour, j'ai développé un client java pour un webservice.
Grâce à Axis2 j'ai généré, à partir de la wsdl, 2 classes qui se trouvent dans org/apache/ws/axis2
Le problème est que ce client fonctionne parfaitement sous Eclipse, mais lorsque je tente de la lancer en ligne de commande, je tombe sur ce message :
Après pas mal de recherche, je m’aperçois que le pointeur null apparait dans le constructeur de FicheAdherent_Client (la classe qui fait le lien entre mon programme et le webservice)Exception in thread "main" java.lang.NullPointerException
L'appel au constructeur de FicheAdherent_WSStub (une des classes générés par Axis2) est tout simplement zappé quand je lance mon programme en ligne de commande, alors que cela fonctionne très bien sous Eclipse. Je me retrouve avec la variable stub == null !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public class FicheAdherent_Client { private FicheAdherent_WSStub stub; FicheAdherent_Client () { try { this.stub = new FicheAdherent_WSStub(); } catch (AxisFault e) { System.out.println("Axis fault : "+e.getMessage()); } }
Pour preuve : j'ai mis un print dans ce constructeur, il ne s'affiche pas dans la console mais s'affiche dans Eclipse.
Merci a ceux qui ont eu le courage de tout lire. Maintenant la question serait de savoir : Pourquoi l'appel au constructeur est-il zappé ? Quel différence y a t-il entre le lancement en ligne de commande et le lancement dans Eclipse qui pourrait l’empêcher de trouver ce constructeur ?
Partager