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 :

wscompile : invalid type for JAX-RPC structure


Sujet :

Services Web Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2005
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 42
    Points : 39
    Points
    39
    Par défaut wscompile : invalid type for JAX-RPC structure
    Bonjour,
    Je viens voir si quelqu'un aurait déjà eu ce problème et saurait m'orienter.
    J'ai développé un Web Service et celui-ci retourne une structure.

    Lorsque je tente de générer les fichier wsdl et jaxrpc-mapping.xml, il me donne cette erreur :
    error: invalid type for JAX-RPC structure: localhost.resaws.type.WSReservation

    Sachant que les classe incriminé est la suivante :
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    package localhost.resaws.type;
     
    public class WSReservation implements java.io.Serializable {
     
    	private static final long serialVersionUID = -4354280337670571738L;
     
    	private boolean 	m_statut;
    	private String		m_msgErreur;
     
    	private UneResa[]	m_lstResa;
    	private int			m_nbResa;
     
     
    	public WSReservation () {
    		m_msgErreur = new String();
    		m_nbResa = 0;
    	}
     
    	/**
             * Renvoit le statut de l'action demandé
             * @return      OK = la demande s'est bien passée, KO = erreur lors de la demande
             */
    	public String getStatut() {
    		return (m_statut)?"OK":"KO";
    	}
     
    	/**
             * Met a jour le statut de l'action demandé
             * @param p_statut      Nouveau statut
             */
    	public void setStatut(boolean p_statut) {
    		m_statut = p_statut;
    	}
     
    	/**
             * Remplace le message d'erreur à retourné pour le Web Service
             * @param p_msgErreur   Nouveau message d'erreur
             */
    	public void setMessageErreur(String p_msgErreur) {
    		m_msgErreur = p_msgErreur;
    	}
     
    	/**
             * Récupère le message d'erreur de la réponse
             * @return      Message d'erreur
             */
    	public String getLastMessage() {
    		return m_msgErreur.toString();
    	}
     
    	/**
             * Retourne le nombre de réservation que contient la réponse
             * @return      Nombre de réservation
             */
    	public int getNbReservation() {
    		return m_nbResa;
    	}
     
    	/**
             * Initialise la taille du tableau des réservation
             * @param p_nbresa      Nombre de réservation qu'il va contenir
             * @return                      0 si ok
             */
    	public int initNbReservation(int p_nbresa) {
    		m_lstResa = new UneResa[p_nbresa];
    		m_nbResa = 0;
    		return 0;
    	}
     
    	/**
             * Ajoute une réservation à la réponse
             * @param p_resa        Réservation à ajouter
             * @return                      0 si OK
             */
    	public int addReservation(UneResa p_resa) {
    		m_lstResa[m_nbResa++] = p_resa;
    		return 0;
    	}
     
    	/**
             * Retourne la réservation présenta à l'index donnée dans la réponse
             * @param p_index       Index de la réservation recherché
             * @return                      Réservation
             */
    	public UneResa getReservation(int p_index) {
    		return m_lstResa[p_index];
    	}
    }
    Je me doute que quelque chose ne lui plait pas dans cette classe mais j'arrive pas a savoir quoi ??
    J'ai essayé d'enlever le tableau et la variable statique mais ça n'y change rien ??

  2. #2
    Nouveau membre du Club
    Inscrit en
    Novembre 2005
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 42
    Points : 39
    Points
    39
    Par défaut
    Bon, j'ai fini par comprendre tout seul (comme quoi des fois...)
    La classe est trop complexe, il faut juste les variable de classe, un constructeur par défaut et les getter et setter de toutes les variables.

    Pour info, voici la nouvelle classe qui fonctionne :
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    package localhost.resaws.type;
     
    public class WSReservation implements java.io.Serializable {
     
    	private static final long serialVersionUID = -4354280337670571738L;
     
    	private String 		m_statut;
    	private String		m_msgErreur;
     
    	private UneResa[]	m_lstResa;
    	private int			m_nbResa;
     
    	public WSReservation () {
    		m_msgErreur = new String();
    		m_statut = new String("OK");
    		m_nbResa = 0;
    	}
     
    	public UneResa[] getM_lstResa() {
    		return m_lstResa;
    	}
     
    	public void setM_lstResa(UneResa[] resa) {
    		m_lstResa = resa;
    	}
     
    	public String getM_msgErreur() {
    		return m_msgErreur;
    	}
     
    	public void setM_msgErreur(String erreur) {
    		m_msgErreur = erreur;
    	}
     
    	public int getM_nbResa() {
    		return m_nbResa;
    	}
     
    	public void setM_nbResa(int resa) {
    		m_nbResa = resa;
    	}
     
    	public String getM_statut() {
    		return m_statut;
    	}
     
    	public void setM_statut(String m_statut) {
    		this.m_statut = m_statut;
    	}
     
    }

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 175
    Points : 108
    Points
    108
    Par défaut
    Une petite question : comment as-tu généré le wsdl et le jaxrpc-mapping.xml ?
    Un script ant ?

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur :invalid types ‘bool[int]’ for array subscript
    Par ferhat.adel dans le forum Débuter
    Réponses: 1
    Dernier message: 10/06/2013, 18h56
  2. SQL Server 05 invalid data for type numeric
    Par Moine dans le forum MS SQL Server
    Réponses: 13
    Dernier message: 12/04/2011, 12h08
  3. Erreur : invalid types «int[int]» for array subscript
    Par fabrice91 dans le forum Débuter
    Réponses: 9
    Dernier message: 01/10/2010, 16h00
  4. IB5 : "invalid data type for arithmetic"
    Par ZoRRo75 dans le forum InterBase
    Réponses: 2
    Dernier message: 21/11/2008, 14h33
  5. type void* dans une structure
    Par barbapapaz dans le forum C
    Réponses: 3
    Dernier message: 16/07/2004, 16h11

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