Most (all?) of the built-in result types parse OGNL in
the "location" param, although you can turn off that
functionality via the "parse" param.
d.
--- Gunnar Hillert <[EMAIL PROTECTED]> wrote:
>
> Hi,
>
> Thanks for your helpful post! Interestingly, this
> also works with redirect
> actions. Since I have not seen any examples anywhere
> out there, I thought I
> also post an example for them:
>
> <result name="success"
> type="redirectAction">
> mySuccess?fooId=${fooId}${bartId ?
> "&barId=" + barId :
> ""}
> </result>
>
> Cheers,
>
> Gunnar
>
>
>
> Gary Affonso wrote:
> >
> > I knew I had done this before, I just found the
> code.
> >
> > Your redirect needs to look something like...
> >
> > <result name="success" type="redirect">
> >
> > myAction.action${foo ? '?foo=' + foo : ''}
> >
> > </result>
> >
> > Note that I'm pretty sure your OGNL lookups are
> not going to get
> > url-escaped.
> >
> > The above assumes that "foo" is a property of the
> Action and available
> > to OGNL (a getter). If foo lives somewhere else
> (like in the session,
> > for instance) then you'll need to do a little more
> work to write the
> > proper ognl reference.
> >
> > Anyway, hope that helps. I think the above is
> (mostly) right this time.
> > :-)
> >
> > - Gary
> >
> >
> > Gary Affonso wrote:
> >> I think you already know this, but in case you
> don't... When you
> >> specify the action to redirect to, you have
> access to the OGNL stack.
> >>
> >> So your redirect may look something like this..
> >>
> >> <result name="success"type="redirect">
> >> myAction.action?param=${paramValue}
> >> </result>
> >>
> >> I think what you're asking is, if "param" has no
> value, you don't want
> >> to see *anything* in the url. Neither the key
> nor the value of the
> >> key/value pair. Right?
> >>
> >> So it should be just a matter of coming up with
> an OGNL expression that
> >> tests for null before inserting either part of
> the key/value pair.
> >>
> >> Something like:
> >>
> >> myAction.action?${paramValue ? '' : 'param=' +
> paramValue}
> >>
> >> Note, that's *totally* off-the-cuff. I know OGNL
> does have the ternary
> >> operator ( condition ? e2 : e3) but the string
> quoting, null checks,
> >> ${}, string concatenation, etc. is probably all
> be wrong in that line
> >> above. :-)
> >>
> >> The point is that I think all you need to do is
> be a little more
> >> sophisticated about the OGNL string. You just
> gotta go learn a bit more
> >> about OGNL.
> >>
> >> The OGNL language reference (at least the one I
> know about) is here:
> >>
> >>
>
http://www.ognl.org/2.6.9/Documentation/html/LanguageGuide/index.html
> >>
> >> - Gary
> >>
> >> Gunnar Hillert wrote:
> >>> Hi,
> >>>
> >>> A typical requirement in my webapps is to
> "redirect" to result pages
> >>> after
> >>> form submission.
> >>> This is quite nicely described here:
> >>>
>
http://www.vitarara.org/cms/struts_2_cookbook/post_and_redirect
> >>>
> >>> This works great but here is my question:
> >>>
> >>> Is there a way to dynamically create parameters?
> For instance, I have
> >>> use
> >>> cases where I don't have to provide all
> parameters in my redirects at
> >>> all
> >>> times. Thus, if the value of variable foo is
> null in my action I don't
> >>> want
> >>> to use the variable in my redirect. I hate to
> see
> >>> .../myaction.action?foo=&bar=1 in my urls.
> >>>
> >>> Is there anything in Struts that would allow
> this? E.g. some additional
> >>> attribute on the param element would be nice
> ${foo}
> >>>
> >>> Or do I have to create my own "custom"
> result-type?
> >>>
> >>> Thanks!
> >>>
> >>> Gunnar Hillert
> >>
> >>
> >>
>
---------------------------------------------------------------------
> >> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> >> For additional commands, e-mail:
> [EMAIL PROTECTED]
> >>
> >>
> >
> >
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail:
> [EMAIL PROTECTED]
> >
> >
> >
>
> --
> View this message in context:
>
http://www.nabble.com/Redirects---Dynamic-Parameters-tf4758978.html#a13638069
> Sent from the Struts - User mailing list archive at
> Nabble.com.
>
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]