ate 2004/10/15 14:47:26
Modified: applications/demo/src/webapp/WEB-INF/demo/preference
pref-view.jsp
layout-portlets/src/java/org/apache/jetspeed/portlets/layout
MultiColumnPortlet.java LayoutPortlet.java
taglibs/treecontrol/src/java/org/apache/jetspeed/portlets/tags
PortletTreeControlTag.java
. .classpath
portals-bridges/struts/src/java/org/apache/portals/bridges/struts
StrutsPortlet.java StrutsPortletURL.java
Log:
Implementing PLT.7.1 PortletURL request parameter name and value encoding
See: http://issues.apache.org/jira/browse/JS2-149
Revision Changes Path
1.7 +5 -5
jakarta-jetspeed-2/applications/demo/src/webapp/WEB-INF/demo/preference/pref-view.jsp
Index: pref-view.jsp
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/applications/demo/src/webapp/WEB-INF/demo/preference/pref-view.jsp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- pref-view.jsp 9 Sep 2004 22:08:17 -0000 1.6
+++ pref-view.jsp 15 Oct 2004 21:47:25 -0000 1.7
@@ -25,12 +25,12 @@
<h3><fmt:message key="prefview.label.PreferenceList"/></h3>
<p>
+<fmt:message key="prefview.label.noactionjustrender" var="viewMeParam"/>
+<jsp:useBean id="viewMeParam" type="String"/>
-<portlet:renderURL windowState="normal" portletMode="view" var="baseViewLink"/>
-<c:url value="${baseViewLink}" var="viewLink">
- <c:param name="invokeMessage"><fmt:message
key="prefview.label.noactionjustrender"/></c:param>
-</c:url>
-
+<portlet:renderURL windowState="normal" portletMode="view" var="viewLink">
+ <portlet:param name="invokeMessage" value="<%=viewMeParam%>"/>
+</portlet:renderURL>
<a href="<c:out value="${viewLink}" />"><fmt:message
key="prefview.label.ViewMe"/></a>
</p>
1.6 +1 -1
jakarta-jetspeed-2/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java
Index: MultiColumnPortlet.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- MultiColumnPortlet.java 23 Sep 2004 03:29:29 -0000 1.5
+++ MultiColumnPortlet.java 15 Oct 2004 21:47:25 -0000 1.6
@@ -69,7 +69,7 @@
public void doView( RenderRequest request, RenderResponse response ) throws
PortletException, IOException
{
RequestContext context = Jetspeed.getCurrentRequestContext();
- PortletWindow window =
context.getNavigationalState().getMaximizedWindow(context.getPage());
+ PortletWindow window =
context.getPortalURL().getNavigationalState().getMaximizedWindow();
if (request.getParameter("moveBy") != null &&
request.getParameter("fragmentId") != null)
{
1.6 +1 -1
jakarta-jetspeed-2/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/LayoutPortlet.java
Index: LayoutPortlet.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/LayoutPortlet.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- LayoutPortlet.java 6 Oct 2004 23:44:55 -0000 1.5
+++ LayoutPortlet.java 15 Oct 2004 21:47:25 -0000 1.6
@@ -93,7 +93,7 @@
response.setContentType("text/html");
RequestContext context = Jetspeed.getCurrentRequestContext();
- PortletWindow window =
context.getNavigationalState().getMaximizedWindow(context.getPage());
+ PortletWindow window =
context.getPortalURL().getNavigationalState().getMaximizedWindow();
boolean maximized = (window != null);
request.setAttribute(PortalReservedParameters.PAGE_ATTRIBUTE_KEY,
getPage(request));
1.4 +14 -7
jakarta-jetspeed-2/taglibs/treecontrol/src/java/org/apache/jetspeed/portlets/tags/PortletTreeControlTag.java
Index: PortletTreeControlTag.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/taglibs/treecontrol/src/java/org/apache/jetspeed/portlets/tags/PortletTreeControlTag.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- PortletTreeControlTag.java 2 Sep 2004 15:15:33 -0000 1.3
+++ PortletTreeControlTag.java 15 Oct 2004 21:47:25 -0000 1.4
@@ -160,19 +160,22 @@
// character in parameter values.
String encodedNodeName = URLEncoder.encode(node.getName());
- String action = replace(getAction(), "${name}", encodedNodeName);
+ PortletURL treeActionUrl = renderResponse.createActionURL();
+ treeActionUrl.setParameter("node", node.getName());
+ String treeAction = treeActionUrl.toString();
+// String action = replace(getAction(), "${name}", encodedNodeName);
- String updateTreeAction =
- replace(getAction(), "tree=${name}", "select=" + encodedNodeName);
- updateTreeAction =
- ((HttpServletResponse) pageContext.getResponse()).
- encodeURL(updateTreeAction);
+// String updateTreeAction =
+// replace(getAction(), "tree=${name}", "select=" + encodedNodeName);
+// updateTreeAction =
+// ((HttpServletResponse) pageContext.getResponse()).
+// encodeURL(updateTreeAction);
out.print(" <td>");
if ((action != null) && !node.isLeaf()) {
out.print("<a href=\"");
- out.print(response.encodeURL(action));
+ out.print(response.encodeURL(treeAction));
out.print("\">");
}
out.print("<img src=\"");
@@ -234,10 +237,12 @@
out.print(target);
out.print("\"");
}
+ /* Invalid, not used, and not usefull
// to refresh the tree in the same 'self' frame
out.print(" onclick=\"");
out.print("self.location.href='" + updateTreeAction + "'");
out.print("\"");
+ */
out.print(">");
}
out.print("<img src=\"");
@@ -275,10 +280,12 @@
out.print(labelStyle);
out.print("\"");
}
+ /* Invalid, not used, and not usefull
// to refresh the tree in the same 'self' frame
out.print(" onclick=\"");
out.print("self.location.href='" + updateTreeAction + "'");
out.print("\"");
+ */
out.print(">");
} else if (labelStyle != null) {
out.print("<span class=\"");
1.69 +1 -0 jakarta-jetspeed-2/.classpath
Index: .classpath
===================================================================
RCS file: /home/cvs/jakarta-jetspeed-2/.classpath,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -r1.68 -r1.69
--- .classpath 15 Oct 2004 15:04:07 -0000 1.68
+++ .classpath 15 Oct 2004 21:47:25 -0000 1.69
@@ -97,5 +97,6 @@
<classpathentry kind="var" path="MAVEN_REPO/nekohtml/jars/nekohtml-0.9.3.jar"/>
<classpathentry kind="var"
path="MAVEN_REPO/springframework/jars/spring-dao-1.1.1.jar"/>
<classpathentry kind="var"
path="MAVEN_REPO/springframework/jars/spring-orm-1.1.1.jar"/>
+ <classpathentry kind="var"
path="MAVEN_REPO/commons-codec/jars/commons-codec-1.3.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
1.6 +3 -5
jakarta-jetspeed-2/portals-bridges/struts/src/java/org/apache/portals/bridges/struts/StrutsPortlet.java
Index: StrutsPortlet.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/portals-bridges/struts/src/java/org/apache/portals/bridges/struts/StrutsPortlet.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- StrutsPortlet.java 29 Sep 2004 07:31:40 -0000 1.5
+++ StrutsPortlet.java 15 Oct 2004 21:47:25 -0000 1.6
@@ -297,8 +297,7 @@
pageURL = StrutsPortletURL.getOriginURL(req);
if (pageURL != null)
((ActionResponse) response).setRenderParameter(
- StrutsPortletURL.PAGE, StrutsPortletURL
- .encodePageURL(pageURL));
+ StrutsPortletURL.PAGE, pageURL);
if (log.isDebugEnabled())
log.debug("action render error context");
req.getSession().setAttribute(
@@ -319,8 +318,7 @@
if (renderURL == null && log.isDebugEnabled())
log.debug("action render page: " + pageURL);
((ActionResponse) response).setRenderParameter(
- StrutsPortletURL.PAGE, StrutsPortletURL
- .encodePageURL(pageURL));
+ StrutsPortletURL.PAGE, pageURL);
}
}
}
1.2 +5 -29
jakarta-jetspeed-2/portals-bridges/struts/src/java/org/apache/portals/bridges/struts/StrutsPortletURL.java
Index: StrutsPortletURL.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/portals-bridges/struts/src/java/org/apache/portals/bridges/struts/StrutsPortletURL.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- StrutsPortletURL.java 29 Jul 2004 22:16:40 -0000 1.1
+++ StrutsPortletURL.java 15 Oct 2004 21:47:25 -0000 1.2
@@ -28,39 +28,15 @@
*/
public class StrutsPortletURL
{
- public static final char PATH_DIVIDER = '|';
- public static final char PARAM_DIVIDER = '$';
public static final String PAGE = "_spage";
public static final String ORIGIN = "_sorig";
- public static String encodePageURL(String url)
- {
- if (url != null && !url.startsWith("http://"))
- {
- url = url.replace('?', PARAM_DIVIDER).replace('&', PARAM_DIVIDER)
- .replace('/', PATH_DIVIDER);
- }
- return url;
- }
public static String getPageURL(ServletRequest request)
{
- return decodePageURL(request.getParameter(PAGE));
+ return request.getParameter(PAGE);
}
public static String getOriginURL(ServletRequest request)
{
- return decodePageURL(request.getParameter(ORIGIN));
- }
- public static String decodePageURL(String url)
- {
- if (url != null)
- {
- int firstParamIndex;
- if ((firstParamIndex = url.indexOf(PARAM_DIVIDER)) != -1)
- url = (url.substring(0, firstParamIndex) + '?' + url
- .substring(firstParamIndex + 1)).replace(PARAM_DIVIDER,
- '&');
- url = url.replace(PATH_DIVIDER, '/');
- }
- return url;
+ return request.getParameter(ORIGIN);
}
private static PortletURL createPortletURL(ServletRequest request,
String pageURL, boolean actionURL)
@@ -79,7 +55,7 @@
if (pageURL.startsWith(contextPath))
pageURL = pageURL.substring(contextPath.length());
}
- portletURL.setParameter(PAGE, encodePageURL(pageURL));
+ portletURL.setParameter(PAGE, pageURL);
if (actionURL)
{
String originURL = request.getParameter(PAGE);
@@ -98,4 +74,4 @@
{
return createPortletURL(request, pageURL, true);
}
-}
+}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]