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 ?
> "&amp;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]

Reply via email to