Just thought I would mention this in case someone was not sure, and I hope
I'm not preaching to the choir.
The life cycle is as follows:
If the form or link has an ampersand it always gets escaped as %26.
The container than translates it back as "&" so getParameter() will get the
already decoded "&" character
So if you are to send "&" it will get encoded to %26amp%3b and decoded
back to "&" which is legal xml
Therfore I dont understand the problem
----- Original Message -----
From: "Deadman, Hal" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, June 01, 2001 5:56 PM
Subject: RE: cvs commit: jakarta-struts/src/share/org/apache/struts/util
RequestUtils.java
> Sounds good. I don't have access to other browsers but they probably work
> too.
>
> > -----Original Message-----
> > From: Craig R. McClanahan [mailto:[EMAIL PROTECTED]]
> > Sent: Friday, June 01, 2001 5:31 PM
> > To: [EMAIL PROTECTED]
> > Subject: RE: cvs commit:
> > jakarta-struts/src/share/org/apache/struts/util
> > RequestUtils.java
> >
> >
> >
> >
> > On Fri, 1 Jun 2001, Deadman, Hal wrote:
> >
> > > Does this change mean that there will be a link generated
> > that looks like
> > > this:
> > >
> > > some.jsp?test=1&test=2
> > > instead of
> > > some.jsp?test=1&test=2
> > >
> >
> > Yes, in the generated HTML code of the page (i.e. when you do a view
> > source).
> >
> > > If so, I don't think that will work. It doesn't work on
> > Weblogic 6.0.
> > > Calling getParameterValues() only sees the first value.
> > >
> >
> > In my tests, both Netscape and IE would both send this
> > hyperlink back in
> > with a '&' instead, so multiple parameter values would still
> > be recognized
> > in the usual way. Are there clients that don't do this?
> >
> > > Hal
> > >
> >
> > Craig
> >
> >
> > >
> > > > -----Original Message-----
> > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> > > > Sent: Friday, June 01, 2001 4:22 PM
> > > > To: [EMAIL PROTECTED]
> > > > Subject: cvs commit:
> > jakarta-struts/src/share/org/apache/struts/util
> > > > RequestUtils.java
> > > >
> > > >
> > > > craigmcc 01/06/01 13:21:41
> > > >
> > > > Modified: src/share/org/apache/struts/util Tag:
> > STRUTS_1_0_BRANCH
> > > > RequestUtils.java
> > > > Log:
> > > > Generate "&" instead of "&" in request URIs so that the
> > > > output is still
> > > > legal XML syntax in the value returned by computeURL().
> > > >
> > > > PR: Bugzilla #1938
> > > > Submitted by : Alessandro Vernet <[EMAIL PROTECTED]>
> > (also supplied
> > > > the patch - thanks!)
> > > >
> > > > Revision Changes Path
> > > > No revision
> > > >
> > > >
> > > > No revision
> > > >
> > > >
> > > > 1.14.2.2 +7 -7
> > > > jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java
> > > >
> > > > Index: RequestUtils.java
> > > >
> > ===================================================================
> > > > RCS file:
> > > > /home/cvs/jakarta-struts/src/share/org/apache/struts/util/Requ
> > > > estUtils.java,v
> > > > retrieving revision 1.14.2.1
> > > > retrieving revision 1.14.2.2
> > > > diff -u -r1.14.2.1 -r1.14.2.2
> > > > --- RequestUtils.java 2001/06/01 18:45:03 1.14.2.1
> > > > +++ RequestUtils.java 2001/06/01 20:21:40 1.14.2.2
> > > > @@ -1,7 +1,7 @@
> > > > /*
> > > > - * $Header:
> > > > /home/cvs/jakarta-struts/src/share/org/apache/struts/util/Requ
> > > > estUtils.java,v 1.14.2.1 2001/06/01 18:45:03 craigmcc Exp $
> > > > - * $Revision: 1.14.2.1 $
> > > > - * $Date: 2001/06/01 18:45:03 $
> > > > + * $Header:
> > > > /home/cvs/jakarta-struts/src/share/org/apache/struts/util/Requ
> > > > estUtils.java,v 1.14.2.2 2001/06/01 20:21:40 craigmcc Exp $
> > > > + * $Revision: 1.14.2.2 $
> > > > + * $Date: 2001/06/01 20:21:40 $
> > > > *
> > > > *
> > > >
> > ====================================================================
> > > > *
> > > > @@ -95,7 +95,7 @@
> > > > * in the Struts controller framework.
> > > > *
> > > > * @author Craig R. McClanahan
> > > > - * @version $Revision: 1.14.2.1 $ $Date: 2001/06/01 18:45:03 $
> > > > + * @version $Revision: 1.14.2.2 $ $Date: 2001/06/01 20:21:40 $
> > > > */
> > > >
> > > > public class RequestUtils {
> > > > @@ -364,7 +364,7 @@
> > > > url.append('?');
> > > > question = true;
> > > > } else
> > > > - url.append('&');
> > > > + url.append("&");
> > > > url.append(URLEncoder.encode(key));
> > > > url.append('='); // Interpret null as
> > > > "no value"
> > > > } else if (value instanceof String) {
> > > > @@ -372,7 +372,7 @@
> > > > url.append('?');
> > > > question = true;
> > > > } else
> > > > - url.append('&');
> > > > + url.append("&");
> > > > url.append(URLEncoder.encode(key));
> > > > url.append('=');
> > > >
> > url.append(URLEncoder.encode((String) value));
> > > > @@ -383,7 +383,7 @@
> > > > url.append('?');
> > > > question = true;
> > > > } else
> > > > - url.append('&');
> > > > + url.append("&");
> > > > url.append(URLEncoder.encode(key));
> > > > url.append('=');
> > > >
> > url.append(URLEncoder.encode(values[i]));
> > > >
> > > >
> > > >
> > > >
> > >
> >
>