If it does encoding does it matter it there is a context attribute?
If the URL contains characters that should be encoded (e.g. space), it is the user's responsibility to encode them.
<c:param> subtags can also be specified within the body of <c:url> for adding to the URL query string parameters, which will be properly encoded if necessary.
[ February 15, 2007: Message edited by: Carol Enderlin ]
My understanding was/is that c:url and response.encodeURL both rewrite (aka "encoding" by meaning 2). By what Carol found, it looks like c:params get encoded [non-safe characters] but the value of c:url does not.
I guess the programmer could extend the c:url with a custom taglib that would make a call to URLEncoder.encode or escapeXml seems like another interesting option.
[ February 15, 2007: Message edited by: Marc Peabody ]