You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by vg...@apache.org on 2005/03/14 18:13:27 UTC

svn commit: r157436 - cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/bean/CocoonWrapper.java

Author: vgritsenko
Date: Mon Mar 14 09:13:25 2005
New Revision: 157436

URL: http://svn.apache.org/viewcvs?view=rev&rev=157436
Log:
something tells me pipeline.process should be within env.
use finally block.

Modified:
    cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/bean/CocoonWrapper.java

Modified: cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/bean/CocoonWrapper.java
URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/bean/CocoonWrapper.java?view=diff&r1=157435&r2=157436
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/bean/CocoonWrapper.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/bean/CocoonWrapper.java Mon Mar 14 09:13:25 2005
@@ -110,16 +110,16 @@
         // Create a new hierarchy. This is needed when CocoonBean is called from
         // within a CocoonServlet call, in order not to mix logs
         final Hierarchy hierarchy = new Hierarchy();
-        
+
         final Priority priority = Priority.getPriorityForName(logLevel);
         hierarchy.setDefaultPriority(priority);
-        
+
         // Install a temporary logger so that getDir() can log if needed
         this.log = new LogKitLogger(hierarchy.getLoggerFor(""));
 
         try {
             // First of all, initialize the logging system
-            
+
             // Setup the application context with context-dir and work-dir that
             // can be used in logkit.xconf
             this.context = getDir(this.contextDir, "context");
@@ -502,7 +502,7 @@
      * @param deparameterizedURI a <code>String</code> value of an URI to start sampling from
      * @param parameters a <code>Map</code> value containing request parameters
      * @param links a <code>Map</code> value
-     * @param stream an <code>OutputStream</code> to write the content to
+     * @param handler an <code>ContentHandler</code> to send the content to
      * @return a <code>String</code> value for the content
      * @exception Exception if an error occurs
      */
@@ -525,9 +525,12 @@
         XMLConsumer consumer = new ContentHandlerWrapper(handler);
         ProcessingPipeline pipeline = cocoon.buildPipeline(env);
         CocoonComponentManager.enterEnvironment(env, cocoon.getComponentManager(), cocoon);
-        pipeline.prepareInternal(env);
-        CocoonComponentManager.leaveEnvironment();
-        pipeline.process(env, consumer);
+        try {
+            pipeline.prepareInternal(env);
+            pipeline.process(env, consumer);
+        } finally {
+            CocoonComponentManager.leaveEnvironment();
+        }
 
         // if we get here, the page was created :-)
         int status = env.getStatus();