We are in the process of upgrading from Turbine v2.0 to v2.1 and have
encountered a problem with the ParameterParser.add method.  Under v2.0
if add is invoked for a parameter that is already present in the
parameter list, the old value is effectively replaced by the new value.

This did not appear to work under v2.1 and a look at the source code
reveals that add, now implemented in BaseValueParser, is simply a
pass-through to append [likewise for v3].  So if the parameter is
already present, an array of two values is created.  Subsequently, if
the "scalar" get method is used, the first (old) value is returned. 
This would seem to be a bug, albeit the JavaDoc is not explicit about
the intended behavior of add.

By the way, we use this mechanism to pass information from an action to
a screen.  The parameter in question is passed in via the URL and
sometimes altered by an action, based on input from an HTML form.  The
screen then picks up the parameter via the RunData without concern for
how it was set.

Any comments on whether this is indeed a bug and/or whether there might
be a better away to achieve the same effect?

John Gillen
Thoughtful Solutions, Inc.

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to