簡體   English   中英

帶菜單的ZK會話變量

[英]ZK session variable with a menu

我在數據庫的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>

我需要當用戶確實單擊某個提供程序時,保存一個會話變量以在我的應用程序中使用,因為我有大量的服務,並且當我創建服務時,我需要創建與用戶在中選擇的提供程序相關的服務菜單,我需要創建工作人員,並且我需要創建與用戶在菜單中選擇的提供程序相關的工作人員,

我有這個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);
    }

}

我的主要問題是each變量始終為null,其次我不知道如何保存一個sesion變量以在所有應用程序中使用,並且當我選擇其他提供程序時可以更改此變量。

有人可以幫助我嗎?

ZK提供了一個Session對象,可以通過Sessions靜態獲取器訪問它。 可以在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);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM