On 05/20/2011 12:32 PM, Chamika Weerasinghe wrote:
Hi,
I did a lot to find a cause but I cannot find proper classes in JAX library,
I would either like to move into a different issue or have some expert look
into this, can you guys help?
Thank you.
I debugged this further, and I found the problem. It's a bug in the
com.noelios.restlet jar (or the org.restlet one, depending on how the
bug is seen), and there's little we can do about it.
The problem is in
com.noelios.restlet.application.TunnelFilter.processQuery(Request) at
line 292, where the request is changed to reference a modified query
string. The query string is obtained from the original query string, by
removing some special parameters (result media type, character set and
encoding, language), and then re-encoding the values using a specific
character set.
The code progresses further to
org.restlet.data.Reference.encode(String, CharacterSet)
where it returns an URL-encoded string only if the passed CharacterSet
is not null. Unfortunately, the TunnelFilter passes null, causing the
query to be re-composed without encoding.
A proper fix require to patch the restlet jar (or upgrade to 2.0 if the
problem is fixed in that version).
A quick fix for the JumpToPage dialog is to not use the media=json query
parameter, which triggers the query string processing. The suggest.js
widget already sends the expected media type in an HTTP header.
--
Sergiu Dumitriu
http://purl.org/net/sergiu/