Author: cziegeler
Date: Thu Nov 11 04:28:57 2004
New Revision: 57427

Modified:
   
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/ForwardRedirector.java
   
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java
Log:
Fix bug in global redirect

Modified: 
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/ForwardRedirector.java
==============================================================================
--- 
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/ForwardRedirector.java
  (original)
+++ 
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/ForwardRedirector.java
  Thu Nov 11 04:28:57 2004
@@ -20,6 +20,7 @@
 import org.apache.avalon.framework.logger.AbstractLogEnabled;
 import org.apache.cocoon.ProcessingException;
 import org.apache.cocoon.environment.wrapper.EnvironmentWrapper;
+import org.apache.cocoon.environment.wrapper.MutableEnvironmentFacade;
 
 /**
  * A base class for <code>Redirector</code>s that handle forward redirects, 
i.e. internal
@@ -28,7 +29,7 @@
  * Concrete subclasses have to define the <code>cocoonRedirect()</code> method.
  *
  * @author <a href="mailto:[EMAIL PROTECTED]">Sylvain Wallez</a>
- * @version CVS $Id: ForwardRedirector.java,v 1.13 2004/03/05 13:02:54 
bdelacretaz Exp $
+ * @version CVS $Id$
  */
 public abstract class ForwardRedirector extends AbstractLogEnabled implements 
Redirector, PermanentRedirector {
 
@@ -91,6 +92,8 @@
         // FIXME : how to handle global redirect to cocoon: ?
         if (url.startsWith("cocoon:")) {
             cocoonRedirect(url);
+        } else if (env instanceof MutableEnvironmentFacade ) {
+            
((MutableEnvironmentFacade)env).getDelegate().globalRedirect(sessionMode, url);
         } else if (env instanceof EnvironmentWrapper) {
             ((EnvironmentWrapper)env).globalRedirect(sessionMode,url);
         } else {

Modified: 
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java
==============================================================================
--- 
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java
 (original)
+++ 
cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java
 Thu Nov 11 04:28:57 2004
@@ -293,6 +293,8 @@
     throws IOException {
         if (environment instanceof EnvironmentWrapper) {
             ((EnvironmentWrapper)environment).globalRedirect(sessionmode, 
newURL);
+        } else if ( environment instanceof MutableEnvironmentFacade ) {
+            
((MutableEnvironmentFacade)environment).getDelegate().globalRedirect(sessionmode,
 newURL);
         } else {
             environment.redirect(sessionmode,newURL);
         }

Reply via email to