You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by mu...@apache.org on 2008/11/18 18:04:01 UTC

svn commit: r718652 - /struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java

Author: musachy
Date: Tue Nov 18 09:04:01 2008
New Revision: 718652

URL: http://svn.apache.org/viewvc?rev=718652&view=rev
Log:
WW-2246 always wrap the writer passed to FreeMarker to prevent exception when using custom tags

Modified:
    struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java

Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java?rev=718652&r1=718651&r2=718652&view=diff
==============================================================================
--- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java (original)
+++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java Tue Nov 18 09:04:01 2008
@@ -163,22 +163,20 @@
         // the BodyContent JSP writer doesn't like it when FM flushes automatically --
         // so let's just not do it (it will be flushed eventually anyway)
         Writer writer = templateContext.getWriter();
-        if (bodyContent != null && bodyContent.isAssignableFrom(writer.getClass())) {
-            final Writer wrapped = writer;
-            writer = new Writer() {
-                public void write(char cbuf[], int off, int len) throws IOException {
-                    wrapped.write(cbuf, off, len);
-                }
-
-                public void flush() throws IOException {
-                    // nothing!
-                }
-
-                public void close() throws IOException {
-                    wrapped.close();
-                }
-            };
-        }
+        final Writer wrapped = writer;
+        writer = new Writer() {
+            public void write(char cbuf[], int off, int len) throws IOException {
+                wrapped.write(cbuf, off, len);
+            }
+
+            public void flush() throws IOException {
+                // nothing!
+            }
+
+            public void close() throws IOException {
+                wrapped.close();
+            }
+        };
 
         try {
             stack.push(templateContext.getTag());