WW-4712 Escapes default message

Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/366366cd
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/366366cd
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/366366cd

Branch: refs/heads/master
Commit: 366366cdd8bbb129eaad05eb00dfca6e09afac05
Parents: 4e7a4b1
Author: Lukasz Lenart <lukaszlen...@apache.org>
Authored: Fri Nov 11 11:57:29 2016 +0100
Committer: Lukasz Lenart <lukaszlen...@apache.org>
Committed: Fri Nov 11 11:57:29 2016 +0100

----------------------------------------------------------------------
 .../main/java/org/apache/struts2/util/TextProviderHelper.java    | 4 ++++
 core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/366366cd/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java 
b/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java
index 1c19a2f..c6e9679 100644
--- a/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java
+++ b/core/src/main/java/org/apache/struts2/util/TextProviderHelper.java
@@ -23,6 +23,7 @@ package org.apache.struts2.util;
 
 import com.opensymphony.xwork2.TextProvider;
 import com.opensymphony.xwork2.util.ValueStack;
+import org.apache.commons.lang3.StringEscapeUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -86,6 +87,9 @@ public class TextProviderHelper {
             if (msg == null) {
                 // use the defaultMessage literal value
                 msg = defaultMessage;
+                msg = StringEscapeUtils.escapeEcmaScript(msg);
+                msg = StringEscapeUtils.escapeHtml4(msg);
+                LOG.debug("Message for key '{}' is null, returns escaped 
default message [{}]", key, msg);
             }
 
             if (LOG.isWarnEnabled()) {

http://git-wip-us.apache.org/repos/asf/struts/blob/366366cd/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java 
b/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
index 729ecaf..661acd3 100644
--- a/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
+++ b/core/src/test/java/org/apache/struts2/views/jsp/TextTagTest.java
@@ -274,7 +274,7 @@ public class TextTagTest extends AbstractTagTest {
 
     public void testWithNoMessageAndNoDefaultKeyReturned() throws JspException 
{
         final String key = "key.does.not.exist";
-        tag.setName("'" + key + "'");
+        tag.setName(key);
         tag.doStartTag();
         tag.doEndTag();
         assertEquals(key, writer.toString());

Reply via email to