2010-09-09 3 views
0

Possible en double:
Ordering of values in HttpServletRequest.getParameterValues()PARAMS commande

Nous avons application web J2EE. Côté serveur, nous voulons obtenir les paramètres exactement dans le même ordre que celui envoyé par le navigateur client. Nous avons essayé request.getParameterMap() et request.getParameterNames() mais ces méthodes ne retournent pas les paramètres dans la même séquence que l'envoi par le navigateur client.

Comment pouvons-nous obtenir des paramètres exactement dans le même ordre que ceux envoyés par le navigateur client?

+0

Duplicata de http://stackoverflow.com/questions/2317281/ordering-of-values-in-httpservletrequest-getparametervalues ​​ – skaffman

Répondre

1

paramètres de demande sont stockées en interne sur une carte afin que vous devriez faire aucune hypothèse au sujet de leur ordre. Mais pourquoi ne les lisez-vous pas tels qu'ils sont et ensuite les triez-vous?

0

Ce n'est même pas lié à Java. Vous ne pouvez même pas compter sur le navigateur pour envoyer les paramètres de requête dans un ordre spécifique. De plus, comme noté par @mgamer, vous ne pouvez pas faire d'hypothèses sur l'ordre des paramètres.

Qu'est-ce que vous pouvez faire si vous avez besoin de lire les params dans un ordre prédéfini, est de créer un certain régime dans lequel vous pouvez le faire facilement. Par exemple envoyer un objet JSON ou utiliser un format simple comme param1=val&param2=another-val etc.

+1

c'est la réponse de mgamer, je viens d'éditer une faute de frappe. – Bozho

+0

oups, désolé @bozho –

0

Je ne sais pas pourquoi nous avons besoin de compter sur l'ordre des paramètres envoyés. Pouvez-vous laisser savoir pourquoi cela est nécessaire, peut-être que vous pouvez résoudre le problème par des méthodes alternatives.