Return-Path: Delivered-To: apmail-cocoon-cvs-archive@www.apache.org Received: (qmail 75415 invoked from network); 18 Oct 2004 17:24:18 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 18 Oct 2004 17:24:18 -0000 Received: (qmail 30751 invoked by uid 500); 18 Oct 2004 17:24:10 -0000 Delivered-To: apmail-cocoon-cvs-archive@cocoon.apache.org Received: (qmail 30639 invoked by uid 500); 18 Oct 2004 17:24:09 -0000 Mailing-List: contact cvs-help@cocoon.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@cocoon.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list cvs@cocoon.apache.org Received: (qmail 30563 invoked by uid 99); 18 Oct 2004 17:24:07 -0000 X-ASF-Spam-Status: No, hits=-10.0 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Mon, 18 Oct 2004 10:24:07 -0700 Received: (qmail 75253 invoked by uid 65534); 18 Oct 2004 17:24:05 -0000 Date: 18 Oct 2004 17:24:05 -0000 Message-ID: <20041018172405.75248.qmail@minotaur.apache.org> From: unico@apache.org To: cvs@cocoon.apache.org Subject: svn commit: rev 55022 - in cocoon/trunk/src/java/org/apache/cocoon/environment: internal wrapper X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N Author: unico Date: Mon Oct 18 10:24:05 2004 New Revision: 55022 Modified: cocoon/trunk/src/java/org/apache/cocoon/environment/internal/ForwardEnvironmentWrapper.java cocoon/trunk/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java Log: add a flag to the wrapper environment telling it whether to wrap the response or not because forwarding redirects from the treeprocessor must not be handled with a wrapped response Modified: cocoon/trunk/src/java/org/apache/cocoon/environment/internal/ForwardEnvironmentWrapper.java ============================================================================== --- cocoon/trunk/src/java/org/apache/cocoon/environment/internal/ForwardEnvironmentWrapper.java (original) +++ cocoon/trunk/src/java/org/apache/cocoon/environment/internal/ForwardEnvironmentWrapper.java Mon Oct 18 10:24:05 2004 @@ -15,7 +15,6 @@ */ package org.apache.cocoon.environment.internal; -import java.io.IOException; import java.net.MalformedURLException; import org.apache.avalon.framework.logger.Logger; @@ -35,7 +34,7 @@ SitemapSourceInfo info, Logger logger) throws MalformedURLException { - super(env, info, logger); + super(env, info, logger, false); } /* (non-Javadoc) Modified: cocoon/trunk/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java ============================================================================== --- cocoon/trunk/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java (original) +++ cocoon/trunk/src/java/org/apache/cocoon/environment/wrapper/EnvironmentWrapper.java Mon Oct 18 10:24:05 2004 @@ -60,7 +60,8 @@ protected boolean internalRedirect = false; /** - * Construct a new environment + * Construct a new environment. + * * @param env The origial Environment * @param info A description of the uri for the new environment * @param logger The logger to be used by this environment @@ -68,6 +69,21 @@ public EnvironmentWrapper(Environment env, SitemapSourceInfo info, Logger logger) { + this(env, info, logger, true); + } + + /** + * Construct a new environment. + * + * @param env The origial Environment + * @param info A description of the uri for the new environment + * @param logger The logger to be used by this environment + * @param wrapResponse Whether or not to wrap the Response object + */ + public EnvironmentWrapper(Environment env, + SitemapSourceInfo info, + Logger logger, + boolean wrapResponse) { super(env.getURI(), info.view, env.getAction()); this.enableLogging(logger); @@ -91,9 +107,12 @@ info.queryString, this, info.rawMode); - Response response = new ResponseWrapper(ObjectModelHelper.getResponse(oldObjectModel)); + this.objectModel.put(ObjectModelHelper.REQUEST_OBJECT, this.request); - this.objectModel.put(ObjectModelHelper.RESPONSE_OBJECT, response); + if (wrapResponse) { + Response response = new ResponseWrapper(ObjectModelHelper.getResponse(oldObjectModel)); + this.objectModel.put(ObjectModelHelper.RESPONSE_OBJECT, response); + } this.setURI(info.prefix, info.uri); }