Je fais une fenêtre pop-up.
Window window = (Window)Executions.createComponents("./org.zul", null, **map**);
./org.zul a un EditController.java. Comment ce contrôleur peut-il obtenir map ? merci
Je fais une fenêtre pop-up.
Window window = (Window)Executions.createComponents("./org.zul", null, **map**);
./org.zul a un EditController.java. Comment ce contrôleur peut-il obtenir map ? merci
Vous pouvez utiliser ceci pour ouvrir une fenêtre contextuelle/modale
Map args = new HashMap();
args.put("myMap", thisIsMyMap);
popupWin = (Window)Executions.createComponents("org.zul", null, args);
// popupWin.setClosable(true);
popupWin.doModal();
et ceci dans EditController.java
thisIsMyMap = (HashMap) Executions.getCurrent().getArg().get("myMap");
Cela ressemblerait à ceci
Map args = new HashMap();
defaultReorderSelected = new ListModelList()
args.put("availableList", availableReorderList);
args.put("defaultSelected", defaultReorderSelected);
public void createReorderModal(Component comp, Map args) {
Executions.getCurrent().createComponents("/core/component/model_window_new.zul",
comp, args);
}
Et dans la méthode afterCompose()
du viewModel de model_window_new.zul, vous devez écrire le même nom que celui que vous avez utilisé dans la clé du Map
@AfterCompose
public void doAfterCompose(@ContextParam(ContextType.VIEW) Component view,
@ExecutionArgParam("availableList") ListModelList availableList,
@ExecutionArgParam("defaultSelected") ListModelList defaultSelectedList){
//Votre logique métier.
}
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.