Yes, but that's not behavior I am seeing. Let me elaborate: When the authentication filter kicks in, it will attempt to construct the service url that will be encoded by default. (encodeUrl() here) The encoded service url is then used by the url redirection logic of the client, which in turn gets encoded via URLEncoder.encode(serviceUrl, "UTF-8"). This causes issues if I am using "service" in the configuration that is already encoded (because maybe the url has a character in it like "&")
If I turn off the service url encoding at the first step via "encodeServiceUrl=false", it will eventually still be encoded again by the URLEncoder when the client redirects flow to the CAS login endpoint, and subsequently won't be recognized by the registry. I am trying to CASify an application that is super sensitive to url parameters, etc and I cant instruct the client to not touch the service url at all. Does that help? From: Scott Battaglia [mailto:[email protected]] Sent: Tuesday, February 18, 2014 2:17 PM To: [email protected] Subject: Re: [cas-dev] Java CAS Client + Svc URL Encoding? Do you mean the encodeUrl call? encodeUrl is different than URLEncoder.encode (one appends jsession fun and one actually encodes). On Tue, Feb 18, 2014 at 4:06 PM, Misagh Moayyed <[email protected]> wrote: Team, It appears that the java CAS client doubly encodes service urls; in particular the authentication filter. Once when the service url is constructed (which can be controlled via "encodeServiceUrl") and then once when the redirect url to CAS is constructed [1] Since service-url encoding is turned on by default, this causes the final url to be encoded twice. The protocol mentions that service urls are expected to be encoded, though I am not sure if CAS attempts to do any sort of decoding of urls internally? Might be better to modify the behavior of "encodeServiceUrl" to apply to the entire redirect url, only once? And CAS to attempt and decode? Misagh [1] https://github.com/Jasig/java-cas-client/blob/8742ed6f3747047da3aaf2f60591 d3d128193c84/cas-client-core/src/main/java/org/jasig/cas/client/util/Commo nUtils.java#L164 -- You are currently subscribed to [email protected] as: [email protected] To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/cas-dev -- You are currently subscribed to [email protected] as: [email protected] To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/cas-dev -- You are currently subscribed to [email protected] as: [email protected] To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/cas-dev
