Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Invité de passage
    Homme Profil pro Jérémie
    Étudiant
    Inscrit en
    novembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Nom : Homme Jérémie
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2012
    Messages : 2
    Points : 0
    Points
    0

    Par défaut Initiation aux services Web

    Bonjour,

    J’espère poster dans la bonne section. Je m'initie aux "Web service" et j'essaie de mettre en place un simple programme réalisant une addition de deux nombres.

    Pour ce faire, j'ai crée un WSDL (voir piece-jointe) puis à l'aide de WSDL2JAVA j'ai généré tous les fichiers Java.

    Le service est déployé sur le serveur Tomcat puisque quand je tape : je peux lire :
    PortAddition

    Hi there, this is an AXIS service!
    Perhaps there will be a form for invoking the service here...
    me donne le fichier xml en pièce-jointe.

    Bon par contre quand je teste le service depuis mon navigateur
    j'obtiens ceci :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <soapenv:Envelope>
    <soapenv:Body>
    <soapenv:Fault>
    <faultcode>soapenv:Server.userException</faultcode>
    <faultstring>
    org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.
    </faultstring>
    <detail>
    <ns1:hostname>Lucie-PC</ns1:hostname>
    </detail>
    </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>
    Du coup j'essaye de créer un client sous eclipse.

    J'importe les fichiers générés, les fichiers bibliothèque.

    notamment "B1Impl":

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    /**
     * B1Impl.java
     *
     * This file was auto-generated from WSDL
     * by the Apache Axis 1.3 Oct 05, 2005 (05:23:37 EDT) WSDL2Java emitter.
     */
     
    package Addition.Code;
     
    public class B1Impl implements Addition.Code.Addition_PortType{
        public int addition2Nombres(int nombre1, int nombre2) throws java.rmi.RemoteException {
            return (nombre1+nombre2);
        }
    }
    Puis je crée une classe test :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    import java.net.URL;
     
    import org.apache.axis.client.Service;
    import org.apache.axis.utils.Options;
     
    import Addition.Code.B1Stub
     
    public class Test {
     
    	public void Test1(String[] args) throws Exception {
    		// Invoquer le service Web de la SE adjacente
        	Options opts = new Options(args);
            opts.setDefaultURL("http://localhost:8080/axis/services/PortAddition");
            java.net.URL endpointURL = new URL(opts.getURL());
            Service service = new Service();
            B1Stub stub = new B1Stub(endpointURL, service);
            //B1Stub stub = new B1Stub();
            int somme;
            somme = stub.addition2Nombres(1, 2);
            //System.out.println(Integer.toString(somme));
     
    	}
     
    	/**
    	 * @param args
    	 */
    	public static void main(String[] args) throws Exception {
    		// TODO Auto-generated method stub
    		Test test = new Test();
    		test.Test1(args);
    	}
    }
    Sauf que quand je lance j'ai l'erreur suivante :
    Exception in thread "main" AxisFault
    faultCode: {http://xml.apache.org/axis/}Client
    faultSubcode:
    faultString: No such operation 'nombre1'
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}hostname:Lucie-PC

    No such operation 'nombre1'
    at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
    at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
    at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
    ...
    Voila donc j’espère trouver quelqu'un capable de m'aider pour résoudre ce problème.

    Je rajoute aussi le dossier du projet eclipse (fichier .rar) en piece jointe.
    Fichiers attachés Fichiers attachés

  2. #2
    Invité de passage
    Homme Profil pro Jérémie
    Étudiant
    Inscrit en
    novembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Nom : Homme Jérémie
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : novembre 2012
    Messages : 2
    Points : 0
    Points
    0

    Par défaut Up

    Up ! Personne ne s'y connait ?

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •