Hi All,
Here is a URL that throws an exception if passed to GetMethod as is:
throws something like invalid argument or uri.
It appears to be the unescaped characters in /tr/cl/1,,TRAVELOCITY|987,00.html
The problem is if the whole string is escaped then these escaped characters are double
encoded: %3fService%3d
to %325fService%253d
which causes a server error 500.
http://tr.travelocity.com/tr/cl/1,,TRAVELOCITY|987,00.html?s=hp1
<http://tr.travelocity.com/tr/cl/1,,TRAVELOCITY|987,00.html?s=hp1&c=hdstuff&URL=https://dps1.travelocity.com/l
ognlogin.ctl%3fService%3dTRAVELOCITY%26tr_module%3dRETR%26SEQ%3d1372136878108921366819>
&c=hdstuff&URL=https://dps1.travelocity.com/lognlogin.ctl%3fService%3dTRAVELOCITY%26tr_module%3dRETR%26SEQ%3d1
372136878108921366819
Is there a simple way to send any request without complaining about the URI?
If this URL is pasted into IE it works.
Currently doing this:
URI parsedURI = null;
// if at first you don't succeed.
try {
try { // again.
parsedURI = new URI(url.toCharArray()); // This throws on the URL above
} catch (URIException e) {
parsedURI = new URI(url, I18N.getDefaultEncoding()); // This double
encodes the URL above.
}
} catch (URIException e) {
}
Thanks for your time and help,
Steve
Steve Johnson
Software Engineer
Mercury Interactive
720 564 - 6532
USA, Canada and the Americas
720 564-6620
Hours: M-F 08:00-17:00 MST (Mountain Standard Time)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
<http://www.mercuryinteractive.com> http://www.mercuryinteractive.com
Looking for Answers to your SiteScope or SiteSeer questions?
<http://support.mercuryinteractive.com>
http://support.mercuryinteractive.com
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^