Author: nbubna
Date: Tue Mar 3 20:19:15 2009
New Revision: 749726
URL: http://svn.apache.org/viewvc?rev=749726&view=rev
Log:
view LinkTool should run thru encodeURL to get session id when needed
Modified:
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/LinkTool.java
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java
Modified:
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/LinkTool.java
URL:
http://svn.apache.org/viewvc/velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/LinkTool.java?rev=749726&r1=749725&r2=749726&view=diff
==============================================================================
---
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/LinkTool.java
(original)
+++
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/LinkTool.java
Tue Mar 3 20:19:15 2009
@@ -69,6 +69,7 @@
public static final String INCLUDE_REQUEST_PARAMS_KEY =
"includeRequestParams";
protected HttpServletRequest request;
+ protected HttpServletResponse response;
protected boolean includeRequestParams;
public LinkTool()
@@ -96,7 +97,7 @@
}
// set default/start values from request & response
- HttpServletResponse response =
+ this.response =
(HttpServletResponse)props.getValue(ViewContext.RESPONSE);
setCharacterEncoding(response.getCharacterEncoding());
setFromRequest(this.request);
@@ -303,4 +304,25 @@
return copy.toString();
}
+ /**
+ * Overrides to use response.encodeURL to get session id into URL
+ * if sessions are used but cookies are not supported.
+ */
+ @Override
+ public String toString()
+ {
+ String str = super.toString();
+ if (str.length() == 0)
+ {
+ // avoid a potential NPE from Tomcat's response.encodeURL impl
+ return str;
+ }
+ else
+ {
+ // encode session ID into URL if sessions are used but cookies are
+ // not supported
+ return response.encodeURL(str);
+ }
+ }
+
}
Modified:
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java
URL:
http://svn.apache.org/viewvc/velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java?rev=749726&r1=749725&r2=749726&view=diff
==============================================================================
---
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java
(original)
+++
velocity/tools/trunk/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java
Tue Mar 3 20:19:15 2009
@@ -41,8 +41,6 @@
public static final String AUTO_IGNORE_PARAMETERS_KEY =
"auto-ignore-parameters";
@Deprecated
- protected HttpServletResponse response;
- @Deprecated
protected ServletContext application;
private HashSet<String> parametersToIgnore;