Processing...
Suggested case list:
Using timer to refresh a grid
383
guest
172.69.33.121
25nk0ui
May 7, 2020 7:23:47 AM
link
user model to move item to another listbox
120
guest
162.158.193.148
d0n3kr
Apr 2, 2020 5:28:28 AM
link
Disabled list item row passed to VM-1981
296
fatih123
160.83.36.130
25nk0ui
Feb 13, 2018 4:25:44 PM
link
Disabled list item row passed to VM-1981
295
fatih123
160.83.36.130
25nk0ui
Feb 13, 2018 4:25:16 PM
link
Disabled list item row passed to VM-1981
294
fatih123
160.83.36.132
25nk0ui
Feb 13, 2018 3:30:44 PM
link
grid sample with ListModel/RowRenderer
816
guest
80.82.2.131
2vah9aj
Feb 21, 2017 11:42:21 AM
link
grid sample with ListModel/RowRenderer
809
guest
175.98.113.162
2vah9aj
Jan 26, 2017 9:19:33 AM
link
grid sample with ListModel/RowRenderer
196
guest
79.185.142.40
2vah9aj
Apr 26, 2014 10:53:57 PM
link
grid sample with ListModel/RowRenderer
195
guest
79.185.142.40
2vah9aj
Apr 26, 2014 10:53:54 PM
link
grid sample with ListModel/RowRenderer
194
guest
79.185.142.40
2vah9aj
Apr 26, 2014 10:53:51 PM
link
grid sample with ListModel/RowRenderer
193
guest
79.185.142.40
2vah9aj
Apr 26, 2014 10:53:48 PM
link
grid sample with ListModel/RowRenderer
192
guest
79.185.142.40
2vah9aj
Apr 26, 2014 10:53:44 PM
link
grid sample with ListModel/RowRenderer
191
guest
79.185.142.40
2vah9aj
Apr 26, 2014 10:53:40 PM
link
Hierarchy table without using ZK PE/EE
1
aaknai
151.28.135.213
1s871da
Jul 29, 2013 11:02:46 PM
link
grid sample with ListModel/RowRenderer
128
aaknai
151.28.135.213
2vah9aj
Jul 29, 2013 7:20:00 PM
link
user model to move item to another listbox
1
TonyQ
114.25.109.94
d0n3kr
Apr 21, 2012 10:43:27 AM
link
Using timer to refresh a grid
1
TonyQ
220.133.44.37
25nk0ui
Feb 17, 2012 3:17:34 AM
link
Fire a event from child iframe
1
TonyQ
220.133.44.37
2eupjot
Feb 3, 2012 5:04:52 AM
link
Textbox input restriction sample
1
TonyQ
72.21.245.243
1b3nlr0
Dec 20, 2011 10:09:10 AM
link
Test web core taglib in ZUL
1
TonyQ
198.203.175.175
ofqkem
Dec 17, 2011 3:36:08 AM
link
Latest 10 Fiddles :
constraint binding textbox
3
guest
172.68.151.162
20pelda
Dec 5, 2025 5:08:19 PM
link
Another new ZK fiddle
2
guest
172.68.151.163
20pelda
Dec 5, 2025 5:07:51 PM
link
Another new ZK fiddle
1
guest
172.68.151.162
20pelda
Dec 5, 2025 5:07:32 PM
link
Another new ZK fiddle
1
peggypeng
172.71.154.99
364f4ne
Dec 5, 2025 9:24:31 AM
link
tooltip example
2
guest
104.22.23.13
rc1nto
Dec 4, 2025 2:23:45 PM
link
Another new ZK fiddle
1
guest
172.69.134.227
7t7602
Dec 4, 2025 1:40:46 PM
link
Another new ZK fiddle
1
peggypeng
104.22.17.180
2df6e3o
Dec 4, 2025 8:41:29 AM
link
onClose
1
peggypeng
172.68.87.248
j8kd8a
Dec 3, 2025 4:10:26 AM
link
Another new ZK fiddle
1
peggypeng
172.69.134.227
1rm7f4e
Nov 26, 2025 3:31:24 AM
link
ZK-5912-Suggestion
2
rebeccalai
104.22.20.144
2qrmiiu
Nov 26, 2025 2:07:15 AM
link
Loading bpmn.io
43
dinet
188.114.111.209
17p02rs
Jan 29, 2021 10:13:00 AM
link
resources
index.zul
zul
<zk> <style> #canvas { height: 100%; padding: 0; margin: 0; } </style> <window border="normal" title="hello" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('pkg$.TestComposer')"> <script src="https://unpkg.com/
[email protected]
/dist/bpmn-viewer.development.js"></script> <script src="https://unpkg.com/
[email protected]
/dist/jquery.js"></script> <button id="loadButton" label="load bpmn" onClick="@command('onLoadBpmn')"></button> <div id="canvas"></div> <script><![CDATA[ var bpmnViewer = new BpmnJS({ container: '#canvas' }); async function openDiagram(diagramUrl) { alert('func !!'); try { await bpmnViewer.importXML(diagramUrl); var canvas = bpmnViewer.get('canvas'); canvas.zoom('fit-viewport'); } catch (err) { console.error('could not import BPMN 2.0 diagram', err); alert('could not import BPMN 2.0 diagram', err); } } ]]></script> </window> </zk>
TestComposer.java
java
import java.io.File; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import org.zkoss.bind.annotation.Command; import org.zkoss.bind.annotation.NotifyChange; import org.zkoss.bind.annotation.Init; import org.zkoss.zk.ui.*; import org.zkoss.zk.ui.event.*; import org.zkoss.zk.ui.util.*; import org.zkoss.zk.ui.ext.*; import org.zkoss.zk.au.*; import org.zkoss.zk.au.out.*; import org.zkoss.zul.*; public class TestComposer { private static final String filename = "bpmn2.zul"; @Command public void onLoadBpmn(){ String command = String.format("openDiagram('%s');", getBpmn()); Clients.evalJavaScript(command); } public String getBpmn(){ byte[] encoded = Files.readAllBytes(Paths.get(path)); return new String(encoded, StandardCharsets.UTF_8); } }
test.html
html
<html> <head> </head> <body> <div id="canvas"></div> <script> var diagram = "bpmn2.zul"; var bpmnViewer = new BpmnJS({ container: '#canvas' }); openDiagram(diagram); async function openDiagram(diagramUrl) { try { await bpmnViewer.importXML(diagramUrl); var canvas = bpmnViewer.get('canvas'); canvas.zoom('fit-viewport'); } catch (err) { console.error('could not import BPMN 2.0 diagram', err); } } //$.get(diagramUrl, openDiagram, 'text'); </script> </body> </html>
bpmn2.zul
zul
<?xml version="1.0" encoding="UTF-8"?> <!-- origin at X=0.0 Y=0.0 --> <bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:drools="http://www.jboss.org/drools" xmlns="http://www.jboss.org/drools" xmlns:java="http://www.java.com/javaTypes" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd http://www.jboss.org/drools drools.xsd http://www.bpsim.org/schemas/1.0 bpsim.xsd" exporter="org.eclipse.bpmn2.modeler.core" exporterVersion="1.3.3.Final-v20170221-1647-B60" expressionLanguage="http://www.mvel.org/2.0" targetNamespace="http://www.jboss.org/drools" typeLanguage="http://www.java.com/javaTypes"> <bpmn2:process id="cat.dinet.xemicals.clp.PrecautionaryStatementsFlow" drools:version="1" drools:packageName="cat.dinet.xemicals.clp" drools:adHoc="false" name="PrecautionaryStatementsFlow" isExecutable="true"> <bpmn2:businessRuleTask id="BusinessRuleTask_1" drools:ruleFlowGroup="PrecautionaryStatements" name="Assign Precautionary Statements"> <bpmn2:extensionElements> <drools:metaData name="elementname"> <drools:metaValue><![CDATA[Assign Precautionary Statements]]></drools:metaValue> </drools:metaData> <drools:onExit-script scriptFormat="http://www.java.com/java"/> <drools:onEntry-script scriptFormat="http://www.java.com/java"/> </bpmn2:extensionElements> <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing> </bpmn2:businessRuleTask> <bpmn2:startEvent id="StartEvent_2" name="StartProcess"> <bpmn2:extensionElements> <drools:metaData name="elementname"> <drools:metaValue><![CDATA[StartProcess]]></drools:metaValue> </drools:metaData> </bpmn2:extensionElements> <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing> </bpmn2:startEvent> <bpmn2:endEvent id="EndEvent_2" name="End"> <bpmn2:extensionElements> <drools:metaData name="elementname"> <drools:metaValue><![CDATA[End]]></drools:metaValue> </drools:metaData> </bpmn2:extensionElements> <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming> <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1"/> </bpmn2:endEvent> <bpmn2:sequenceFlow id="SequenceFlow_1" drools:priority="1" sourceRef="StartEvent_2" targetRef="BusinessRuleTask_1"/> <bpmn2:sequenceFlow id="SequenceFlow_4" drools:priority="1" sourceRef="BusinessRuleTask_1" targetRef="EndEvent_2"/> </bpmn2:process> <bpmndi:BPMNDiagram id="BPMNDiagram_1" name="Default Process Diagram"> <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="cat.dinet.xemicals.clp.PrecautionaryStatementsFlow"> <bpmndi:BPMNShape id="BPMNShape_BusinessRuleTask_1" bpmnElement="BusinessRuleTask_1" isExpanded="true"> <dc:Bounds height="50.0" width="110.0" x="270.0" y="93.0"/> <bpmndi:BPMNLabel id="BPMNLabel_3"> <dc:Bounds height="45.0" width="81.0" x="284.0" y="95.0"/> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_StartEvent_1" bpmnElement="StartEvent_2"> <dc:Bounds height="36.0" width="36.0" x="101.0" y="100.0"/> <bpmndi:BPMNLabel> <dc:Bounds height="15.0" width="71.0" x="84.0" y="136.0"/> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNShape id="BPMNShape_EndEvent_1" bpmnElement="EndEvent_2"> <dc:Bounds height="36.0" width="36.0" x="450.0" y="100.0"/> <bpmndi:BPMNLabel> <dc:Bounds height="15.0" width="22.0" x="457.0" y="136.0"/> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="BPMNShape_StartEvent_1" targetElement="BPMNShape_BusinessRuleTask_1"> <di:waypoint xsi:type="dc:Point" x="137.0" y="118.0"/> <di:waypoint xsi:type="dc:Point" x="203.0" y="118.0"/> <di:waypoint xsi:type="dc:Point" x="270.0" y="118.0"/> <bpmndi:BPMNLabel/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="BPMNShape_BusinessRuleTask_1" targetElement="BPMNShape_EndEvent_1"> <di:waypoint xsi:type="dc:Point" x="380.0" y="118.0"/> <di:waypoint xsi:type="dc:Point" x="415.0" y="118.0"/> <di:waypoint xsi:type="dc:Point" x="450.0" y="118.0"/> <bpmndi:BPMNLabel/> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </bpmn2:definitions>
Sorry, JavaScript must be enabled.
Change your browser options, then
try again
.