diff --git a/core/src/main/java/org/apache/struts2/components/ListUIBean.java b/core/src/main/java/org/apache/struts2/components/ListUIBean.java
index 38b710389..ed5094198 100644
--- a/core/src/main/java/org/apache/struts2/components/ListUIBean.java
+++ b/core/src/main/java/org/apache/struts2/components/ListUIBean.java
@@ -87,7 +87,7 @@ public abstract class ListUIBean extends UIBean {
value = list;
}
- if (value instanceof Iterable) {
+ if (value == null || value instanceof Iterable) {
addParameter("list", value);
} else if (MakeIterator.isIterable(value)) {
addParameter("list", MakeIterator.convert(value));
diff --git a/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java b/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java
index 506bad30f..d82a6606e 100644
--- a/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java
+++ b/core/src/test/java/org/apache/struts2/views/freemarker/FreemarkerResultMockedTest.java
@@ -236,9 +236,11 @@ public class FreemarkerResultMockedTest extends StrutsInternalTestCase {
dispatcher.serviceAction(request, response, mapping);
String result = stringWriter.toString();
assertTrue(result.contains(""));
+ assertTrue(result.contains(""));
assertTrue(result.contains(""));
assertTrue(result.contains(""));
assertTrue(result.contains(""));
+ assertTrue(result.contains(""));
}
private void init() throws MalformedURLException, URISyntaxException {
diff --git a/core/src/test/resources/org/apache/struts2/views/freemarker/select.ftl b/core/src/test/resources/org/apache/struts2/views/freemarker/select.ftl
index 905053917..91b84db2f 100644
--- a/core/src/test/resources/org/apache/struts2/views/freemarker/select.ftl
+++ b/core/src/test/resources/org/apache/struts2/views/freemarker/select.ftl
@@ -19,8 +19,10 @@
*/
-->
<@s.select theme="simple" list=['a','b','c'] />
+<@s.select theme="simple" list=1 />
<@s.select theme="simple" list={'key':'value'} />
<@s.select theme="simple">
<@s.optgroup label="label1" list={'optgroupKey1':'optgroupValue1','optgroupKey2':'optgroupValue2'} />
<@s.optgroup label="label2" disabled=true list=['optgroupKey3','optgroupKey4'] />
+<@s.optgroup label="label3" disabled=true list=2 />
@s.select>
\ No newline at end of file