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 :

jax-ws avec JBOSS 4.2 (pas de porttype dans le wsdl généré et erreur avec le client)


Sujet :

Services Web Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut jax-ws avec JBOSS 4.2 (pas de porttype dans le wsdl généré et erreur avec le client)
    Bonjour tout le monde,
    Voilà, ça fait quelque temps que je me suis mis à jax-ws.
    J'utilise jboss-4.2.1.GA, JAVA_HOME<=jdk1.6, eclipse WTP 3.2.

    J'ai créé une interface IEJBService dont voici le code:
    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
    package pack_serveur;
     
    import javax.ejb.Remote;
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebService;
     
    // indique à jboss qu'il doit créer un lien de type remote avec cette interface d'ejb
    @Remote
     
    @WebService(name="calculetteWS")
     
    public interface IEJBService {
     
    	@WebMethod(operationName="sommer")
     
    	public int sommer(@WebParam(name="a") int a,@WebParam(name="b") int b);
     
    	@WebMethod(operationName="soustraire")
    	public int soustraire(@WebParam(name="a") int a,@WebParam(name="b") int b);
     
    	@WebMethod(operationName="multiplier")
    	public int multiplier(@WebParam(name="a") int a,@WebParam(name="b") int b);
     
    }
    une classe qui implémente le service EJBService dont voici le code:

    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
    package pack_serveur;
    import javax.ejb.Stateless;
    import javax.jws.WebService;
     
    //indication de l'ejb session sans état
    @Stateless
     
    //indication de l'interface (endpoint)
    @WebService(endpointInterface="pack_serveur.IEJBService",serviceName="calculetteS") 
    public class EJBService implements IEJBService {
     
    	public int multiplier(int a, int b) {
     
    		return a*b;
    	}
     
    	public int sommer(int a, int b) {
     
    		return a+b;
    	}
     
    	public int soustraire(int a, int b) {
     
    		return a-b;
    	}
     
    }
    j'ai créé les artefact client avec wsconsume.
    j'ai importé les packages qu'il faut aussi bien pour le client que pour le serveur

    voici ma classe de teste!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    package pack_client;
     
    public class teste_client {
     
     
    	public static void main(String[] args) {
     
    		CalculetteS service=new CalculetteS();
    		CalculetteWS calc=service.getEJBServicePort();
    		System.out.println(calc.sommer(4, 3));
     
    }
     
    }
    j'obtiens les erreurs suivantes:

    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
    Exception in thread "main" javax.xml.ws.WebServiceException: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
    	at org.jboss.ws.core.jaxws.client.ClientImpl.handleRemoteException(ClientImpl.java:304)
    	at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:242)
    	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:164)
    	at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:150)
    	at $Proxy15.sommer(Unknown Source)
    	at pack_client.teste_client.main(teste_client.java:12)
    Caused by: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
    	at javax.xml.soap.SOAPMessage.setProperty(Unknown Source)
    	at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)
    	at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:155)
    	at org.jboss.ws.core.CommonSOAP11Binding.createMessage(CommonSOAP11Binding.java:58)
    	at org.jboss.ws.core.CommonSOAPBinding.bindRequestMessage(CommonSOAPBinding.java:153)
    	at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:274)
    	at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:230)
    Alors, si quelqu'un peut m'aider....Merciiiii

    Une indication:
    théoriquement, le wsdl devrait contenir la balise porttype...dans le mien (généré automatiquement par jboss lors de son démarrage), il n'y a pas de cette balise...Je ne sais pas ce que ca veut dire.

    En plus, en essayant de faire un client DotNet, j'était décu de voir que les services receuilli à partir du wsdl avaient des paramètres et types de retour bizarre (genre un objet de type sommerReponse en paramètre et en retour du service sommer)....

    Bref, je galère.

    Merci de m'aider.

  2. #2
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 268
    Points : 101
    Points
    101
    Par défaut
    J'ai la même exception... personne n'a la solution ?

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    J'ai également la même exception et même en cherchant bien sur le net je n'ai rien touvé...

  4. #4
    oca
    oca est déconnecté
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2004
    Messages : 354
    Points : 421
    Points
    421
    Par défaut
    Hello
    C'est visiblement lié à java 1.6, et à SAAJ...
    Un début de réponse par la :
    http://jira.jboss.com/jira/browse/JBWS-1439
    A+

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Effectivement je suis passé en 1.5 et dans ce cas là ca fonctionne bien.
    Merci.

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/08/2011, 10h26
  2. erreur avec jBoss
    Par mehdi_swatch dans le forum Wildfly/JBoss
    Réponses: 3
    Dernier message: 27/05/2009, 02h22
  3. Pas de redeploiement avec JBoss
    Par Mister Nono dans le forum Eclipse Java
    Réponses: 0
    Dernier message: 10/12/2008, 04h07
  4. Pas d'écriture dans mon fichier de log erreur php
    Par Christophe Charron dans le forum Sécurité
    Réponses: 0
    Dernier message: 17/09/2008, 12h59
  5. [cargo:stop] ne fonctionne pas avec Jboss 4
    Par vain_mich dans le forum Maven
    Réponses: 2
    Dernier message: 16/08/2007, 09h32

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