Author: lukaszlenart
Date: Thu Jun 9 05:29:38 2011
New Revision: 1133658
URL: http://svn.apache.org/viewvc?rev=1133658&view=rev
Log:
WW-3644 - check if evaluated expression is not null
Modified:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java
Modified:
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java
URL:
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java?rev=1133658&r1=1133657&r2=1133658&view=diff
==============================================================================
---
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java
(original)
+++
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/ui/AbstractUITag.java
Thu Jun 9 05:29:38 2011
@@ -32,7 +32,6 @@ import java.util.Map;
/**
* Abstract base class for all UI tags.
- *
*/
public abstract class AbstractUITag extends ComponentTagSupport implements
DynamicAttributes {
protected String cssClass;
@@ -80,7 +79,7 @@ public abstract class AbstractUITag exte
protected String tooltipIconPath;
// dynamic attributes.
- protected Map<String,Object> dynamicAttributes = new
HashMap<String,Object>();
+ protected Map<String, Object> dynamicAttributes = new HashMap<String,
Object>();
protected void populateParams() {
super.populateParams();
@@ -292,7 +291,16 @@ public abstract class AbstractUITag exte
public void setDynamicAttribute(String uri, String localName, Object
value) throws JspException {
if (value != null && value instanceof String) {
- dynamicAttributes.put(localName, findValue(value.toString()));
+ evaluateValue(localName, value);
+ } else {
+ dynamicAttributes.put(localName, value);
+ }
+ }
+
+ private void evaluateValue(String localName, Object value) {
+ Object evaluatedValue = findValue(value.toString());
+ if (evaluatedValue != null) {
+ dynamicAttributes.put(localName, evaluatedValue);
} else {
dynamicAttributes.put(localName, value);
}