spring控制器+;中的服务为空;ZK
我试图将zk与spring集成,但不知何故,我无法使spring实例成为那些服务/管理对象 控制器,ProductTypecontroller:spring控制器+;中的服务为空;ZK,spring,zk,Spring,Zk,我试图将zk与spring集成,但不知何故,我无法使spring实例成为那些服务/管理对象 控制器,ProductTypecontroller: @Controller public class ProductTypeController extends SelectorComposer { @Resource private ProductTypeService productTypeService; @Listen("onC
@Controller
public class ProductTypeController extends SelectorComposer {
@Resource
private ProductTypeService productTypeService;
@Listen("onCreate = listbox#typeList")
public void loadAll() {
BindingListModelList model = new BindingListModelList(productTypeService.getAll(), false);
typeList.setItemRenderer(new ProductTypeListRenderer());
typeList.setModel(model);
}
public void loadAll2(Listbox lb){
List lista = productTypeService.getAll();
BindingListModelList model = new BindingListModelList(lista, false);
lb.setItemRenderer(new ProductTypeListRenderer());
lb.setModel(model);
}
}
祖尔
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
<zk>
<hlayout>
<div id="winDiv" apply="com.iknition.micutecake.controller.ProductTypeController">
<vbox>
<listbox id="typeList" width="450px" height="300px" >
<listhead>
<listheader width="50px" label="id" sort="auto(id)" />
<listheader width="250px" label="name" sort="auto(name)" />
<listheader width="140px" label="description" sort="auto(description)" />
</listhead>
</listbox>
</vbox>
</div>
</hlayout>
</zk>
我得到NullPointerException,因为productTypeSerivce为null
但是,如果我将onCreate=“loadAll2(self);”
添加到.zul中的列表框行
然后它将调用方法loadAll2(Listbox lb)
,这样,productTypeService就不为null,一切都正常
知道为什么吗?或者如何让它工作?我找到了答案
只是需要更换
<div id="winDiv" apply="com.iknition.micutecake.controller.ProductTypeController">
与
所以zk将使用spring解析器来解析控制器
<div id="winDiv" apply="${productTypeController}">