Bonjour,
Je souhaite passer des objets, type bean directement par l'url ( index.jsp?param=unObjet.
Est-ce possible ?
dois-je utiliser la sérialisation désérialisation ? ou existe t-il un autre mécanisme ?
Merci pour vos réponses.
Cdlt,
Bonjour,
Je souhaite passer des objets, type bean directement par l'url ( index.jsp?param=unObjet.
Est-ce possible ?
dois-je utiliser la sérialisation désérialisation ? ou existe t-il un autre mécanisme ?
Merci pour vos réponses.
Cdlt,
Je ne vois que la serialisation pour faire cela.
Le GET est limité en nombre de caractères. Une méthode POST est mieux indiquée.
J'ai jamais eu l'occasion de faire une telle action, via un Get. As-tu regardé les Web Services ? C'est fait pour passer des objets à des fonctions via le HTTP (GET/POST) aussi.
Ça ne risque pas de passer par l'URL, elle est limitée aux caractères.
D'où vient l'objet à passer au juste ?
bonjour, merci pour vos réponses. C'est une simple question théorique, il y a bien sur d'autre façon de passer un tel objet de page en page. L'objet pourrait venir de la stack attribute de struts 2 par exemple, rien de compliqué. On imagine un tableau jsp affichant x enregistrements de customers et l'on veux, par une url récupérer, une instance d'un Customer pour la modifier (par exemple).
Merci pour la piste des web services, je vais creuser.
Ce qui est sûr, c'est que l'objet ne passera pas par l'url.
Il y a (à mon avis) 2 façons (simples) de faire :
1) La liste d'objets est dans un contexte session ou application
On peut alors renvoyer l'indice de l'élément et le nom le la liste dans le contexte pour extraire l'objet. Accessoirement, il faudra peut-être envoyer le "nom" du contexte.
2) La liste d'objets a été envoyée dans le request
Il faut alors envoyer la clé unique de l'objet pour pouvoir le récupérer à nouveau.
Merci OButterlin, Lorantus.
J'en conclut qu'il n'est pas possible de passer un objet par l'url même en le sérializant (compte tenu de la limitation à 256 caractères). Une piste reste les web services mais c'est disproportionné.
résolu
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager