You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by cz...@apache.org on 2006/12/14 09:35:27 UTC
svn commit: r487131 -
/portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/PortalURLParserImpl.java
Author: cziegeler
Date: Thu Dec 14 00:35:26 2006
New Revision: 487131
URL: http://svn.apache.org/viewvc?view=rev&rev=487131
Log:
Fix for PLUTO-247: Only add ? and & to url if needed
Modified:
portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/PortalURLParserImpl.java
Modified: portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/PortalURLParserImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/PortalURLParserImpl.java?view=diff&rev=487131&r1=487130&r2=487131
==============================================================================
--- portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/PortalURLParserImpl.java (original)
+++ portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/url/impl/PortalURLParserImpl.java Thu Dec 14 00:35:26 2006
@@ -214,6 +214,7 @@
// Append action and render parameters.
StringBuffer query = new StringBuffer("?");
+ boolean firstParam = true;
for (Iterator it = portalURL.getParameters().iterator();
it.hasNext(); ) {
@@ -223,7 +224,13 @@
if (portalURL.getActionWindow() != null
&& portalURL.getActionWindow().equals(param.getWindowId())) {
for (int i = 0; i < param.getValues().length; i++) {
- query.append("&").append(encodeQueryParam(param.getName())).append("=")
+ // FIX for PLUTO-247
+ if ( firstParam ) {
+ firstParam = false;
+ } else {
+ query.append("&");
+ }
+ query.append(encodeQueryParam(param.getName())).append("=")
.append(encodeQueryParam(param.getValues()[i]));
}
}
@@ -242,7 +249,12 @@
}
// Construct the string representing the portal URL.
- return buffer.append(query).toString();
+ // Fix for PLUTO-247 - check if query string contains parameters
+ if ( query.length() > 1 ) {
+ return buffer.append(query).toString();
+ } else {
+ return buffer.toString();
+ }
}
private String encodeQueryParam(String param) {