我的链接网址正在发生变化

时间:2014-07-11 09:46:41

标签: java html jsp url-encoding application-server

在我的门户网站中,对于某些用户(并非所有用户),当他们点击链接时,'&'个字符变为'+'

例如,链接是: www.mysite.com/test.jsp?param1=test1&param2=test2

然后它变成: www.mysite.com/test.jsp?param1=test1+param2=test2

只发生在特定国家(巴西)。我的其他具有相同代码的门户网站正常工作。

我想用servlet处理请求,当我看到"+"替换为"&"时,我觉得这不是一个合适的解决方案..

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

尝试使用JSTL核心代码c:url

此标记会在必要时自动执行URL重写。 JSTL url标记只是将调用写入response.encodeURL()方法的另一种方法。 url标记提供的唯一真正优势是正确的URL编码,包括children param标记指定的任何参数。

示例代码:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<c:url value="/test.jsp" var="url">
    <c:param name="param1" value="test1" />
    <c:param name="param2" value="test2" />
</c:url>

<a href="${url }">Click Here</a>