webwork/src/main/webwork/view/taglib IteratorTag.java,1.5,1.6
[email protected] Sun, 30 Jun 2002 22:22:52 -0700
| Newsgroups | gmane.comp.java.webwork.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/webwork/webwork/src/main/webwork/view/taglib
In directory usw-pr-cvs1:/tmp/cvs-serv14958
Modified Files:
IteratorTag.java
Log Message:
modified to support primitive arrays
Index: IteratorTag.java
===================================================================
RCS file: /cvsroot/webwork/webwork/src/main/webwork/view/taglib/IteratorTag.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- IteratorTag.java 23 Jun 2002 23:54:02 -0000 1.5
+++ IteratorTag.java 1 Jul 2002 05:22:50 -0000 1.6
@@ -12,6 +12,7 @@
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.PageContext;
import java.util.*;
+import java.lang.reflect.Array;
/**
* Tag to iterate over an iterable value.
@@ -82,11 +83,13 @@
}
else if(value.getClass().isArray())
{
- //Category.getInstance(this.getClass()).debug("Array="+value+" "+value.getClass()+" "+((Object[])value)[0]);
- ArrayList list = new ArrayList(((Object[])value).length);
- Object[] objects = (Object[])value;
- for(int j = 0; j < objects.length; j++)
- list.add(objects[j]);
+ //need ability to support primitives; therefore, cannot
+ //use Object[] casting.
+ Object a = Array.newInstance(value.getClass().getComponentType(), (Array.getLength(value)));
+ ArrayList list = new ArrayList(Array.getLength(value));
+ for(int j = 0; j < Array.getLength(value); j++) {
+ list.add(Array.get(value, j));
+ }
iterator = list.iterator();
}
else if(value instanceof Enumeration)
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf