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

Services Web Java Discussion :

Plusieurs classes dans un web service


Sujet :

Services Web Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 22
    Points : 19
    Points
    19
    Par défaut Plusieurs classes dans un web service
    Bonjour,

    Quand je deploie mon web service, qui comporte plusieurs classes, ca bug .
    Les packages semblent ne pas marcher, et quand je fout toutes mes classes dans un seul fichier, en mettant qu'une seul public, j'ai ce genre d'erreur quand j'essaie de consommer mon service via un client en 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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Exception in thread "main" AxisFault
     faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
     faultSubcode: 
     faultString: java.lang.reflect.InvocationTargetException
     faultActor: 
     faultNode: 
     faultDetail: 
    	{http://xml.apache.org/axis/}hostname:lt-sle
     
    java.lang.reflect.InvocationTargetException
    	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)
    	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:633)
    	at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElement(XMLNSDocumentScannerImpl.java:719)
    	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1685)
    	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
    	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
    	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
    	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
    	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
    	at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
    	at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
    	at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
    	at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
    	at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
    	at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
    	at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    	at org.apache.axis.client.Call.invoke(Call.java:2767)
    	at org.apache.axis.client.Call.invoke(Call.java:2443)
    	at org.apache.axis.client.Call.invoke(Call.java:2366)
    	at org.apache.axis.client.Call.invoke(Call.java:1812)
    	at EmployeClient.main(EmployeClient.java:18)
    Pour autant quand je met tout dans une classe tout fonctionne...

    J'ai essayé :

    - mettre mes classes pas en public, séparé de ma classe principale
    - inclure mes classes dans ma classe principale
    - dans fichiers séparés avec un package

    Rien n'y fait, avec les deux premières méthodes j'ai l'erreur affiché plus haut quand j'essaie de consommer mon web service.
    Et avec la troisième méthode, c'est comme si il arrivait pas à comprendre mon package (il comprend pas et surtout croit que ma classe situé dans le fichier qui a le même package n'existe pas !)

    J'ai vraiment écumé le web pendant des...jours sans résultats. S'il vous plait merci de prendre le temps de m'aider sur ce point critique pour mon stage ;(

    Merci d'avance,
    dahevos

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 22
    Points : 19
    Points
    19
    Par défaut
    j'ai trouvé la solution, par exemple j'ai mon web service Multiclasse.jws ( placé dans le dossier axis) :
    import test.Personnage;

    Code : Java
    public class Multiclasse {


    public String recupNom(String popo, String papa) {

    Personnage p1 = new Personnage();
    return p1.getNom();

    }



    }


    Je place ensuite dans le dossier WEB-INF/classes/test/ le fichier Personnage.class ( vous compiler avec javac ou vous le déployer de base dans axis avec Personnage.jws et vous récupérer ensuite le .class dans le dossier WEB-INF/jwsClasses/test

    Yeahhhhhhhhhh

Discussions similaires

  1. [Débutant] visualiser et utiliser des classes spécialisées dans un web service
    Par alucia dans le forum Services Web
    Réponses: 4
    Dernier message: 18/06/2012, 13h59
  2. [Débutant] Classes dans un web service
    Par pitite dans le forum VB.NET
    Réponses: 0
    Dernier message: 16/03/2012, 12h53
  3. Ajout d'une classe dans un web service existant?
    Par doudoubens dans le forum Services Web
    Réponses: 0
    Dernier message: 09/05/2011, 10h22
  4. [C#2.0] Comment rendre obligatoire un element dans un Web Service
    Par cosmos38240 dans le forum Services Web
    Réponses: 1
    Dernier message: 02/03/2007, 16h27
  5. Réponses: 8
    Dernier message: 23/11/2006, 11h30

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