Hi,
in reply to the migration guide, thanks a lot for the information.


I have a jetspeed-1 based turbine webapp and tried to do an update. I am
already using turbine 2.3.3.



With this release I experience with the handling of the velocity
templates a similar problem as discussed in

http://wiki.apache.org/turbine/Turbine2/VelocityOnlyLayout getting the
error java.lang.IllegalStateException: getOutputStream() has already
been called for this response.



My Settings in TurbineResource.properties are:

services.VelocityService.default.screen=VelocityDirectScreen

services.VelocityService.default.layout = VelocityDirectLayout

As these classes use TurbineVelocity.handleRequest(context, template,
rundata.getResponse().getOutputStream()) and the caching seems to be
deprecated I changed in my controllers/processors from

TurbineVelocity.handleRequest(context, template, rundata.getOut());

TurbineVelocity.handleRequest(context, template, rundata.getResponse
().getOutputStream());



The error disappears, but the sequence of the loaded templates is
reversed (more exactly the templates loaded from the screen Home.vm, the
navigations templates seem to be in the right order), if the jetspeed-1
loading mechanism tries to load the templates. This may be logical, as
the getResponse().getOutputStream() is only flushed after the last
template is called and velocity push/pops the templates from a stack.

I have overwritten the TurbineVelocityService class setting the
OutputStreamWriter writer to a class variable and using this variable in
the method
org.apache.jetspeed.services.velocity.DCTurbineVelocityService.handleRequest
(Context, String, OutputStream), checking for null:

            public void handleRequest(Context context, String filename,

                                      OutputStream output)

                    throws TurbineException

            {

                String charset  = getCharSet(context);

                try

                {

                        if (writer == null)

                                writer = new OutputStreamWriter(output,
charset);

                    writer.flush();

                    executeRequest(context, filename, writer);

                }

                catch (Exception e)

                {

                    renderingError(filename, e);

                }

                finally

                {

                    try

                    {

                        if (writer != null)

                        {

                            writer.flush();

                            writer = null;

                        }

                    }

                    catch (Exception ignored)

                    {

                        // do nothing.

                    }

                }

            }



Doing this the problem seems to be resolved.



I get another error, if I have in the default
turbine-classic-pipeline.xml

 <org.apache.turbine.pipeline.DetermineRedirectRequestedValve/>:



2011-08-29 14:24:44,889 [http-8093-6] DEBUG
DetermineRedirectRequestedValve  - Output stream closed?

java.lang.Exception: Nothing to output

        at
org.apache.turbine.pipeline.DetermineRedirectRequestedValve.redirectRequested
(DetermineRedirectRequestedValve.java:102)

        at
org.apache.turbine.pipeline.DetermineRedirectRequestedValve.invoke
(DetermineRedirectRequestedValve.java:59)



The reason are, that two deprecated variables have their default
value ??


Thanks for any discussion.

Best regards,

Georg





                                                                                
                                                          
  Von:        Thomas Vandahl <t...@apache.org>                                  
                                                            
                                                                                
                                                          
  An:         Turbine Developers List <dev@turbine.apache.org>, Turbine Users 
List <u...@turbine.apache.org>                              
                                                                                
                                                          
  Datum:      28.08.2011 12:35                                                  
                                                          
                                                                                
                                                          
  Betreff:    Turbine 4.0 Migration Guide                                       
                                                          
                                                                                
                                                          









Hi folks,

I started to fill up the Migration Guide for upgrading a Turbine 2.3.3
application to Turbine 4.0M1. See the Turbine Wiki at
http://wiki.apache.org/turbine/Turbine4/Turbine4.0M1/Migrate233

I would like to invite everyone to add your own experiences to the page.
Feedback to the topics already covered is also very welcome.

Bye, Thomas.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@turbine.apache.org
For additional commands, e-mail: dev-h...@turbine.apache.org







---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@turbine.apache.org
For additional commands, e-mail: dev-h...@turbine.apache.org

Reply via email to