Oh yes, I forgot about the values.
Indeed, you can have UriInfo injected and use its getQueryParameters to build a 
new Message.QUERY_STRING.

Another approach will be CXF specific (as far as the app code is concerned) :

- use new MetadataMap(UriInfo.getQueryParameters(), true, true) and set it on a 
message using say a "case.insensitive.query" key and then get this map from an 
injected MessageContext, using its get() method.

Rebuilding the Message.QUERY_STRING should be cheaper though, especially if the 
query string is short
Cheers, Sergey 

-----Original Message-----
From: Linus Kamb [mailto:[email protected]] 
Sent: 02 February 2010 10:21
To: [email protected]
Subject: RE: case-insensitive RS query parameters?

Yes, I see that could work.  I guess it will lower case the entire query, but 
if that's a problem, I suppose I could break it up and work on each parameter.

Thanks,
Linus


> -----Message d'origine-----
> De : Sergey Beryozkin [mailto:[email protected]]
> Envoyé : Tuesday, February 02, 2010 10:52 AM
> À : [email protected]
> Objet : RE: case-insensitive RS query parameters?
> 
> Hi
> 
> It is interesting HttpHeaders.getRequestHeaders docs do talk about the
> case-insensitive keys but UriInfo.getQueryParameters docs don't. I'll
> need to ask a question on the jaxrs list.
> What you can try to do is to reset a Message.QUERY_STRING on a current
> message in a request filter:
> 
> String query = (String)message.get(Message.QUERY_STRING);
> message.put(Message.QUERY_STRING, query.toLowerCase());
> 
> hope it helps, Sergey
> 
> -----Original Message-----
> From: Linus Kamb [mailto:[email protected]]
> Sent: 02 February 2010 09:07
> To: [email protected]
> Subject: case-insensitive RS query parameters?
> 
> Hi,
> 
> 
> 
> Is it possible to configure CXF to have case-insensitive query
> parameters in rs services?
> 
> 
> 
> cheers,
> 
> Linus
> 
> 



Reply via email to