Java 带有菜单的ZK会话变量

Java 带有菜单的ZK会话变量,java,session,session-variables,zk,zk-grid,Java,Session,Session Variables,Zk,Zk Grid,我在数据库中的ZK提供者中有一个应用程序,我的DAO返回数据库的所有名称 我在ZK中有这样的观点: <zk> <window id="Mnos" border="normal" mode="modal" width="320px" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('operator')"> <listbox model

我在数据库中的ZK提供者中有一个应用程序,我的DAO返回数据库的所有名称

我在ZK中有这样的观点:

<zk>
    <window id="Mnos" border="normal" mode="modal" width="320px"
        apply="org.zkoss.bind.BindComposer"
        viewModel="@id('vm') @init('operator')">
        <listbox model="@load(vm.provider)" onClick="@command('provider', provider = each)"/>

    </window>
</zk>

我需要当用户点击某个提供者时,保存一个会话变量以在我的应用程序中使用,因为我有一个crud服务,当我创建服务时,我需要创建与用户在菜单中选择的提供者相关的服务,我需要创建worker,我需要创建一个与用户在菜单中选择的提供者相关的worker

我有一个java类:

public class operator {

    Collection<String> provider = MnoDAO.getAllProvidersByName();

    public Collection<String> getMno() {
            return mno;
        }
    @Command
    public void provider(@BindingParam("provider") String provider){
        Messagebox.show("Hola ... "+mnoList);
    }

}
公共类运算符{
集合提供程序=MnoDAO.getAllProvidersByName();
公共集合getMno(){
返回mno;
}
@命令
公共无效提供程序(@BindingParam(“提供程序”)字符串提供程序){
Messagebox.show(“你好…”+mnoList);
}
}
我的主要问题是,
每个
始终为空,其次,我不知道如何保存一个sesion变量以在所有应用程序中使用,并且当我选择其他提供程序时,该变量可以更改

有人能帮我吗?

ZK提供了一个对象,可以通过静态getter访问。这可以从ZK生命周期的任何地方(任何ZK托管线程)使用

ZK提供了一个对象,可通过静态getter访问。这可以从ZK生命周期的任何地方(任何ZK托管线程)使用

String name = "myCoolVariable";
MyObject originalValue = getMyCoolVariable();
Session session = Sessions.getCurrent();
session.setAttribute(name, originalValue);

...

if (session.hasAttribute(name)) {
    MyObject retrievedValue = (MyObject) session.getAttribute(name);
}