Revision history [back]

click to hide/show revision 1
initial version

asked 2013-08-06 03:28:37 +0800

anthonylau gravatar image anthonylau

NullPointerException on createComponents() with MVVM

I have a zul:

<window title="Templates" border="normal" zclass="z-window-overlapped" apply="org.zkoss.bind.BindComposer" sizable="true" viewModel="@id('vm') @init('com.foo.TemplateViewModel')" > <listbox id="templateListbox" model="@load(vm.Templates)" onSelect="@command('onSelect')" vflex="1" selectedItem="@bind(vm.selectedEvent)" > <listhead sizable="true"> <listheader label="Name" sort="auto" /> <listheader label="Description" sort="auto" /> </listhead> <template name="model" var="tpl"> <listitem> <listcell label="@load(tpl.key)" /> <listcell label="@load(tpl.description)" /> </listitem> </template> </listbox> </window>

I create component:

Component comp = Executions.createComponents("/mvvm.zul", null, null); comp.setParent(parent);

I will get NullPointerException:

at org.zkoss.bind.impl.AbstractRenderer.resoloveTemplate(AbstractRenderer.java:59) at org.zkoss.bind.impl.BindListitemRenderer.render(BindListitemRenderer.java:41) at org.zkoss.zul.Listbox$Renderer.render(Listbox.java:2644) at org.zkoss.zul.Listbox.renderItems(Listbox.java:2762) at org.zkoss.zul.Listbox.service(Listbox.java:3490) at org.zkoss.zk.ui.impl.DesktopImpl.service(DesktopImpl.java:701) at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1201) at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:600) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:482) at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:491)

There is no exception if I access the zul through URL.

NullPointerException on createComponents() with MVVM

I have a zul:

<window title="Templates" border="normal" zclass="z-window-overlapped"
                apply="org.zkoss.bind.BindComposer"  sizable="true"
                viewModel="@id('vm') @init('com.foo.TemplateViewModel')"
                >
onSize="System.out.println(self.getHeight())">
                <listbox id="templateListbox" model="@load(vm.Templates)"
model="@load(vm.templates)"
                    onSelect="@command('onSelect')" vflex="1"
                    selectedItem="@bind(vm.selectedEvent)" >
                    <listhead sizable="true">
                        <listheader label="Name" sort="auto" />
                        <listheader label="Description" sort="auto" />
                    </listhead>
                    <template name="model" var="tpl">
                        <listitem>
                            <listcell label="@load(tpl.key)" />
                            <listcell label="@load(tpl.description)" />
                        </listitem>
                    </template>
                </listbox>
            </window></window>

I create component:

Component comp = Executions.createComponents("/mvvm.zul", = Executions.createComponents("/mvvm.zul", null, null); comp.setParent(parent); null); comp.setParent(parent);

I will get NullPointerException:

Encounters an error: Unknown exception: java.lang.NullPointerException.

java.lang.NullPointerException 
    at org.zkoss.bind.impl.AbstractRenderer.resoloveTemplate(AbstractRenderer.java:59)
org.zkoss.bind.impl.AbstractRenderer.resoloveTemplate(AbstractRenderer.java:59) 
    at org.zkoss.bind.impl.BindListitemRenderer.render(BindListitemRenderer.java:41)
org.zkoss.bind.impl.BindListitemRenderer.render(BindListitemRenderer.java:41) 
    at org.zkoss.zul.Listbox$Renderer.render(Listbox.java:2644)
org.zkoss.zul.Listbox$Renderer.render(Listbox.java:2644) 
    at org.zkoss.zul.Listbox.renderItems(Listbox.java:2762)
org.zkoss.zul.Listbox.renderItems(Listbox.java:2762) 
    at org.zkoss.zul.Listbox.service(Listbox.java:3490)
org.zkoss.zul.Listbox.service(Listbox.java:3490) 
    at org.zkoss.zk.ui.impl.DesktopImpl.service(DesktopImpl.java:701)
    at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1201)
    at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:600)
    at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:482)
    at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:491)

There is no exception if I access the zul through URL.

Support Options
  • Email Support
  • Training
  • Consulting
  • Outsourcing
Learn More