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

GWT et Vaadin Java Discussion :

RemoteServiceServlet et objets GWT complexe


Sujet :

GWT et Vaadin Java

  1. #1
    Membre averti
    Inscrit en
    Février 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 31
    Par défaut RemoteServiceServlet et objets GWT complexe
    Bonjour,

    Je souhaite récupérer des instances de type A via un RemoteServiceServlet. Jusque là pas de problème je récupère plusieurs instances de A ; A est simple il ne contient que des int, des Strings. En revanche lorsque que A contient une référence vers un autre objet de type B simple aussi, ça passe pas.. Pourtant B implémente Serializable... pareil si je me un sql, util Date dans A... Peut-on transférer un objet qui contient une référence vers un autre ? si oui, quel est l'astuce ? à quoi faut-il penser ?

    Merci.

  2. #2
    Membre émérite
    Avatar de mamelouk
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    867
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2005
    Messages : 867
    Par défaut
    salut,

    est ce que tu peut sérialiser B (sans qu'il fasse partie de A)? pas d'erreur dans le hosted mode ?

  3. #3
    Membre expérimenté Avatar de dvicente72
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 213
    Par défaut
    J'ai eu le même problème et en plus d'être Serializable il faut que chaque objet implemente IsSerializable (package com.google.gwt.user.client.rpc) et là ça passe , normalement

  4. #4
    Membre émérite
    Avatar de mamelouk
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    867
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2005
    Messages : 867
    Par défaut
    non, IsSerializable c'était dans l'ancienne version de gwt

  5. #5
    Membre expérimenté Avatar de dvicente72
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 213
    Par défaut
    ben faut croire que non, malgré ce qu'ils disent, j'utilise la 1.5.3 et j'ai bien été obligé de tout mettre en IsSerializable pour que je puisse faire transiter des DTO entre le service et la couche IHM

  6. #6
    Membre émérite
    Avatar de mamelouk
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    867
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2005
    Messages : 867
    Par défaut
    ah c'est marrant parce que moi j'utilise la 1.5 aussi et je n'ai jamais utilisé ce IsSerizable pour les objets complexes. en fait j'utilise gwt depuis la 1.4 et je n'en ai jamais eu besoin

  7. #7
    Membre expérimenté Avatar de dvicente72
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 213
    Par défaut
    GWT c'est pas la partie ou je suis le plus calé mais curieusement, j'avais un arbre d'objet entièrement "Serializable" que je remontais à partir d'un service Spring et naïvement j'ai pensé qu'un fois dans mon service RPC, vu que c'est "Serializable" et que dans la doc c'est marqué que ça fonctionne, je pouvais le faire transiter jusque dans la GUI.....

    eh bien non, effectivement sur un DTO simple qui est "Serializable", ça fonctionne mais si si tu as des refs sur d'autres DTO, ça ne fonctionne plus

    c'est pas une affirmation définitive, c'est une constatation que j'ai faite.

    J'ai bien été obligé de passer tous mes DTO en "IsSerializable" pour que cela fonctionne.

    Je ne fais du GWT que depuis la mi-Octobre donc on repassera pour l'expertise mais dans mon cas, il n'y a que comme ça que j'ai pu faire transiter mes DTO dans toutes le couches sans avoir besoin de faire des helpers pour changer de type d'objeten fonction de la couche traversée

  8. #8
    Membre averti
    Inscrit en
    Février 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 31
    Par défaut
    Bonjour,

    Merci pour vos réponses. J'ai implémenté l'interface isSerializable sur mes objets complexe et donc du coup ça marche Pourtant j'utilise la version 1.5.3 de GWT... Je mets le topic en "résolu" dans le sens où le problème de départ a trouvé une solution, mais certains points restent à élucider...

    Merci

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

Discussions similaires

  1. Peut-on envoyer un objet Json complexe au serveur ?
    Par drooss dans le forum jQuery
    Réponses: 9
    Dernier message: 13/07/2011, 15h51
  2. Drag and Drop sur objet métier complexe
    Par jojodu31 dans le forum SWT/JFace
    Réponses: 0
    Dernier message: 06/05/2010, 14h33
  3. Hibernate requete HQL et Objet date "complexe"
    Par Esil2008 dans le forum Hibernate
    Réponses: 0
    Dernier message: 21/07/2009, 11h40
  4. Mémoire - objet 3D complexe
    Par dream_of_australia dans le forum SDL
    Réponses: 6
    Dernier message: 09/07/2009, 07h36
  5. Dessiner des objets plus complexes avec OpenGL
    Par Premium dans le forum OpenGL
    Réponses: 18
    Dernier message: 21/11/2006, 17h55

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