2013-02-11 64 views
4

任何人都知道如何從Jar加載Zul? 我有一個圖書館項目,其中包含祖爾。 目前我使用createComponents(String uri,Component parent,Map arg)但我不知道或不能在一個jar中引用uri。從Jar加載ZUL


我現在使用:

public static Component createComponentsFromJar(final String path, final Component parent, final Map<?,?> arg) throws IOException { 
    final InputStream resourceAsStream = ComponentHelper.class.getClassLoader().getResourceAsStream(path); 
    final PageDefinition pageDefinition = Executions.getCurrent().getPageDefinitionDirectly(new InputStreamReader(resourceAsStream), "zul"); 
    resourceAsStream.close(); 
    return Executions.createComponents(pageDefinition, parent, arg); 
} 

沒有任何認識一些問題,創建新頁面的這種方法嗎?一些綁定問題或someting?

+0

爲什麼你正在混合web項目機智h純Java編碼我從來沒有見過這種類型的編碼 – 2013-02-11 12:24:09

+0

我做了一個動態嚮導,你可以添加頁面到嚮導,如: pages.add(new WizardPageConfig(SOMEID,「/pages/personWizard/pageStart.zul」));這個嚮導邏輯在我們的框架中,嚮導的文件上傳頁面是默認的zul,這也應該在框架中。 – Kani 2013-02-11 13:22:00

+0

是這種小提琴嗎? – 2013-02-11 13:24:18

回答

6

Executions.createComponents將與ZK特定URI工作(參見Inter-Application Communication),其中 「〜/ 」 在ZK特定URI將獲得在 「類路徑/ WEB/」,承擔「SRC在你ZUL頁面文件/網絡/ ZUL /頁」,如下圖:

zul page under src

你導出src文件夾作爲一個罐子,那麼你可以用下面的罐子ZUL文件創建組件:

Executions.createComponents("~./zul/pages/zulInJar.zul", parent, null); 
+0

謝謝本,你的回答 – 2013-02-17 16:10:01

+0

thx這很好! – Kani 2013-02-18 13:40:01