Hi y'all,
for reasons beyond my control I have to do something like this in
the sitemap:

<map:match pattern="somewhere.xsp">
  <map:redirect-to url="somewhere-else.xsp?param2=value2"/>
</map:match>

Now, I know it's ugly, but I can't do anything about it right now.

So, that brings me to the point...
When there were already CGI parameters present in the original 
requested URL (e.g. somewhere.xsp?param1=value1) the new 
parameter (param2=value2) is appended using the "?" character.
This produces an incorrect URL in the form of:

  somewhere-else.xsp?param1=value1?param2=value2

The second question mark should be an ampersand (&).

Now, attached is a patch to HttpEnvironment.java that should do 
the trick. If someon with commit rights thinks it's worthy, please
check it in.

Thanks,
Christian Schmitt




--- HttpEnvironment.java.orig   Wed Aug  1 08:45:24 2001
+++ HttpEnvironment.java        Wed Aug  1 08:46:23 2001
@@ -100,7 +100,10 @@
         String redirect = this.response.encodeRedirectURL(newURL);
 
         if (qs != null)
-            redirect = redirect + "?" + qs;
+            if (redirect.indexOf("?") > -1)
+                   redirect = redirect + "&" + qs;
+            else
+                   redirect = redirect + "?" + qs;
 
         getLogger().debug("Sending redirect to '" + redirect + "'");
         this.response.sendRedirect (redirect);

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to