java - How to uri encode a string in jsp? -


if have string "output" equals url:

${output} = "/testing/method/thing.do?foo=testing&bar=foo" 

in jsp, how convert string into:

%2ftesting%2fmethod%2fthing.do%3ffoo%3dtesting%26bar%3dfoo 

using

<c:out value="${output}"/> 

? need urlencoder.encode(url) in c:out somehow.

it's not directly possible standard jstl tags/functions. here's hack of <c:url>:

<c:url var="url" value=""><c:param name="output" value="${output}" /></c:url> <c:set var="url" value="${fn:substringafter(url, '=')}" /> <p>url-encoded component: ${url}</p> 

if want more cleanly, create el function. @ bottom of this answer can find basic kickoff example. you'd end as:

<p>url-encoded component: ${my:urlencode(output, 'utf-8')}</p> 

with

public static string urlencode(string value, string charset) throws unsupportedencodingexception {     return urlencoder.encode(value, charset); } 

Comments

Popular posts from this blog

python - Scipy curvefit RuntimeError:Optimal parameters not found: Number of calls to function has reached maxfev = 1000 -

c# - How to add a new treeview at the selected node? -

java - netbeans "Please wait - classpath scanning in progress..." -