This is an automated email from the ASF dual-hosted git repository.

lukaszlenart pushed a commit to branch WW-5256-textarea-whitespace-devmode
in repository https://gitbox.apache.org/repos/asf/struts.git

commit 0380544b1545c91a3a1bde58d4e565c47f68cf32
Author: Lukasz Lenart <[email protected]>
AuthorDate: Mon Jun 15 10:48:33 2026 +0200

    WW-5256 fix(freemarker): honor whitespaceStripping regardless of devMode
---
 .../views/freemarker/FreemarkerManager.java        | 11 +-----
 .../views/freemarker/FreemarkerManagerTest.java    | 44 ----------------------
 2 files changed, 2 insertions(+), 53 deletions(-)

diff --git 
a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java 
b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java
index dcbebc767..e6432d337 100644
--- 
a/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java
+++ 
b/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java
@@ -177,7 +177,6 @@ public class FreemarkerManager {
     protected int mruMaxStrongSize;
     protected String templateUpdateDelay;
     protected boolean whitespaceStripping = true;
-    protected boolean devMode;
     protected Map<String, TagLibraryModelProvider> tagLibraries;
 
     private FileManager fileManager;
@@ -213,11 +212,6 @@ public class FreemarkerManager {
         this.whitespaceStripping = BooleanUtils.toBoolean(whitespaceStripping);
     }
 
-    @Inject(value = StrutsConstants.STRUTS_DEVMODE, required = false)
-    public void setDevMode(String devMode) {
-        this.devMode = BooleanUtils.toBoolean(devMode);
-    }
-
     @Inject
     public void setContainer(Container container) {
         Map<String, TagLibraryModelProvider> map = new HashMap<>();
@@ -352,9 +346,8 @@ public class FreemarkerManager {
         }
         LOG.debug("Disabled localized lookups");
         configuration.setLocalizedLookup(false);
-        boolean enableWhitespaceStripping = whitespaceStripping && !devMode;
-        LOG.debug("Whitespace stripping: {} (configured: {}, devMode: {})", 
enableWhitespaceStripping, whitespaceStripping, devMode);
-        configuration.setWhitespaceStripping(enableWhitespaceStripping);
+        LOG.debug("Whitespace stripping: {}", whitespaceStripping);
+        configuration.setWhitespaceStripping(whitespaceStripping);
         LOG.debug("Sets NewBuiltinClassResolver to 
TemplateClassResolver.SAFER_RESOLVER");
         
configuration.setNewBuiltinClassResolver(TemplateClassResolver.SAFER_RESOLVER);
         LOG.debug("Sets HTML as an output format and escaping policy");
diff --git 
a/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerManagerTest.java
 
b/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerManagerTest.java
index 7c072cd06..8abfafc19 100644
--- 
a/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerManagerTest.java
+++ 
b/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerManagerTest.java
@@ -131,7 +131,6 @@ public class FreemarkerManagerTest extends 
StrutsInternalTestCase {
         FreemarkerManager manager = new FreemarkerManager();
         container.inject(manager);
         manager.setWhitespaceStripping("false");
-        manager.setDevMode("false");
 
         // when
         manager.init(servletContext);
@@ -139,49 +138,6 @@ public class FreemarkerManagerTest extends 
StrutsInternalTestCase {
         // then
         assertFalse(manager.config.getWhitespaceStripping());
     }
-
-    public void testWhitespaceStrippingDisabledInDevMode() throws Exception {
-        // given
-        FreemarkerManager manager = new FreemarkerManager();
-        container.inject(manager);
-        manager.setWhitespaceStripping("true");
-        manager.setDevMode("true");
-
-        // when
-        manager.init(servletContext);
-
-        // then
-        assertFalse(manager.config.getWhitespaceStripping());
-    }
-
-    public void testWhitespaceStrippingEnabledWhenNotInDevMode() throws 
Exception {
-        // given
-        FreemarkerManager manager = new FreemarkerManager();
-        container.inject(manager);
-        manager.setWhitespaceStripping("true");
-        manager.setDevMode("false");
-
-        // when
-        manager.init(servletContext);
-
-        // then
-        assertTrue(manager.config.getWhitespaceStripping());
-    }
-
-    // TEMP (WW-5256): documents the pre-fix bug; removed in the same change 
that removes the devMode coupling.
-    public void testWhitespaceStrippingNotDisabledInDevMode() throws Exception 
{
-        // given
-        FreemarkerManager manager = new FreemarkerManager();
-        container.inject(manager);
-        manager.setWhitespaceStripping("true");
-        manager.setDevMode("true");
-
-        // when
-        manager.init(servletContext);
-
-        // then
-        assertTrue(manager.config.getWhitespaceStripping());
-    }
 }
 
 class DummyFreemarkerManager extends FreemarkerManager {

Reply via email to