You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-user@portals.apache.org by Ɓukasz Olek <ol...@hoga.pl> on 2002/10/23 10:33:16 UTC

Jetspeed BUG???

I have downloaded nightly build Jetspeed from 2002-10-19.
I have an Action object with two methods: buildNormalContext and
doUpdate:

public class MeetingFormAction extends VelocityPortletAction {

  protected void buildNormalContext(VelocityPortlet velocityPortlet,
Context context, RunData runData){
  ...
    }
    
    public void doUpdate(RunData runData, Context context) throws
Exception{
    }
}

method buildNormalContext gets properly configured context object, but
doUpdate does not.
Context in doUpdate does not have any keys set (array getKeys() is
empty).
Is it a bug?
What to do?
Thanks 
Lukasz Olek


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Jetspeed BUG???

Posted by "Glenn R. Golden" <gg...@umich.edu>.
If in your form that has the submit that triggered the doUpdate, there 
is an 'action' parameter (with the class name of your Action class), 
then the request will be handled by the Turbine action mechanism, not 
the Velocity action mechanism.  The difference is that from Turbine, 
only your action class is called - with velocity, all the portlets on 
the page get a shot at responding to the submit.  Also, with Turbine, 
the action is processed BEFORE any of the page is composed - with 
velocity, the action is processed as part of each portlet's 
composition.  An action call handled by Turbine can do a redirect - one 
handled by velocity cannot (output has already been sent to the 
browser).

The key difference in this case is that the context is new or missing 
when using the Turbine action processing, but will be there as expected 
when using the velocity action processing.

We exclusively use the Turbine action processing in our Jetspeed work.  
We just ignore the context parameter to the do... routines.

When doing Turbine action processing, the do... routine will be called, 
then all the portlets will be composed, so your build routine will also 
be called.  Nice separation between input processing and output.  With 
velocity, only the do.... routine will be called, it must setup the 
context for the output as well as process the input.

All controlled by having or not the 'action' form field or url 
parameter.

- Glenn

---------------------------------------------------------------------
Glenn R. Golden    Systems Research Programmer
School of Information             University of Michigan
ggolden@umich.edu                            734-615-1419
---------------------------------------------------------------------


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>