-
FEATURED COMPONENTS
First time here? Check out the FAQ!
I have modify the sample demo code from http://www.zkoss.org/zkdemo/grid/paging from zul to zkjsp tag like this:
<z:page> <z:panel id="mainP" framable="true" height="400px"> <z:panelchildren> <z:grid id="grid" autopaging="true" mold="paging" vflex="true" pagingPosition="both"> <z:columns> <z:column width="80px" label="Order #" align="left" /> <z:column label="Item Purchased" align="center" /> <z:column label="Purchased Time" align="center" /> <z:column width="80px" label="Paid" align="center" /> </z:columns> <z:rows> <z:zscript> import org.zkoss.zul.*; int[] orderArray = new int[26]; for (int j = 0; j < 26; j++) { orderArray = 3456 + j; } </z:zscript> <z:row forEach="${orderArray}"> <z:label value="${each}" /> <z:listbox mold="select"> <z:listitem label="Java" /> <z:listitem label="Latte" /> <z:listitem label="Lungo" /> <z:listitem label="Macchiato" /> <z:listitem label="Mocha" /> </z:listbox> <z:timebox cols="12" format="a hh:mm:ss" onCreate="self.value = new Date()" mold="rounded" /> <z:checkbox label="No" onCheck='self.label= self.isChecked()?"Yes" : "No" ' /> </z:row> </z:rows> </z:grid> </z:panelchildren> </z:panel> </z:page>
and there will be a exception:
org.zkoss.zk.ui.UiException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: java.lang.NoSuchMethodException: org.zkoss.zul.Row: no method called forEach for at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:530) at org.zkoss.lang.Classes.newInstance(Classes.java:76) at org.zkoss.lang.Exceptions.wrap(Exceptions.java:162) at org.zkoss.zk.ui.UiException$Aide.wrap(UiException.java:44) at org.zkoss.jsp.zul.impl.RootTag$MyRichlet.service(RootTag.java:313) at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage0(UiEngineImpl.java:417) at org.zkoss.zk.ui.impl.UiEngineImpl.execNewPage(UiEngineImpl.java:302) at org.zkoss.jsp.zul.impl.RootTag.doTag(RootTag.java:273) at org.apache.jsp.WEB_002dINF.jsp.bom.bomAdmin_jsp._jspx_meth_z_page_0(org.apache.jsp.WEB_002dINF.jsp.bom.bomAdmin_jsp:199) at org.apache.jsp.WEB_002dINF.jsp.bom.bomAdmin_jsp._jspService(org.apache.jsp.WEB_002dINF.jsp.bom.bomAdmin_jsp:139) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:109) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) ......
is forEach can't work with zk jsp tag?
Hi jack,
Please using jstl with JSP
<c:forEach var="i" begin="1" end="3" step="1" varStatus="status"> <z:row forEach="${orderArray}"> <z:label value="${each}" /> <z:listbox mold="select"> <z:listitem label="Java" /> <z:listitem label="Latte" /> <z:listitem label="Lungo" /> <z:listitem label="Macchiato" /> <z:listitem label="Mocha" /> </z:listbox> <z:timebox cols="12" format="a hh:mm:ss" onCreate="self.value = new Date()" mold="rounded" /> <z:checkbox label="No" onCheck='self.label= self.isChecked()?"Yes" : "No" ' /> </z:row> </c:forEach>
thanks, but because of this problem: http://www.zkoss.org/forum/listComment/15427
<z:rows> <z:zscript> import org.zkoss.zul.*; int[] orderArray = new int[26]; for (int j = 0; j < 26; j++) { orderArray = 3456 + j; } </z:zscript> <c:forEach var="num" items="${orderArray}" varStatus="status"> <z:row> <z:label value="${num}" /> <z:listbox mold="select"> <z:listitem label="Java" /> <z:listitem label="Latte" /> <z:listitem label="Lungo" /> <z:listitem label="Macchiato" /> <z:listitem label="Mocha" /> </z:listbox> <z:timebox cols="12" format="a hh:mm:ss" onCreate="self.value = new Date()" mold="rounded" /> <z:checkbox label="No" onCheck='self.label= self.isChecked()?"Yes" : "No" ' /> </z:row> </c:forEach> </z:rows>
in jstl, how to access the zk variable orderArray ?
use the zuljsp 1.5, and jstl forEach,the problem have resolved,
Hi...
I´m using zk 5.0.9 and zk jsp 1.6
I´m still getting this error in forEach with zk jsp..
My problem is..
I need to re-render a component after a button click for example, and using jstl for each the component wasn´t updated...
I would like to do something like this...
<zk:zscript>
String[] str = new String[]{"Test", "Test2"};
</zk:zscript>
<zk:div model="@{null, load-after='add.onClick'}">
<zk:div forEach="${str}">
<script type="text/javascript">alert("test");</script>
</zk:div>
</zk:div>
<zk:button id="add"></zk:button>
But i get this error...
>>java.lang.NoSuchMethodException: org.zkoss.zul.Div: no method called forEach for
But str is not null....
Please help me....
Hi hwneto,
You can call invalidate
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <%@ taglib uri="http://www.zkoss.org/jsp/zul" prefix="zk"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <html> <head> </head> <body style="padding: 0px; overflow: hidden; margin: 0px;"> <% request.setAttribute("str",new String[]{"Test", "Test2"}); %> <zk:page> <zk:div id="myDiv"> <c:forEach var="s" items="${str}"> <zk:div> <script type="text/javascript"> alert("${s}"); </script> </zk:div> </c:forEach> </zk:div> <zk:button id="add" label="add" onClick="myDiv.invalidate()"></zk:button> </zk:page> </body> </html>
Asked: 2011-03-03 21:34:40 +0800
Seen: 703 times
Last updated: Nov 07 '11