Bonjour,

voila je dois faire une modif sur un outil développé en J2EE. Ce projet intègre le framework Zk.

Je dois rajouter une nouvelle fenêtre AJAX pour uploader un fichier CSV.

Voici mon code :

Unité ZUL
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<window id="loadfromcsv" title="Load list from CSV file" width="400px" closable="true" apply="com.myController">
 
<separator/>
    <div>
        <label id="titleLabel"/>
        <textbox id="pathTextbox"/>
        <button id="browseButton"/>
    </div>
    <div align="center">
        <button id="okButton" label="OK"/>
        <button id="backButton"/>
    </div>
<separator/>
</window>
Mon controller
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package com.myController;
 
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Button;
import org.zkoss.zul.Label;
import org.zkoss.zul.Textbox;
import org.zkoss.zul.Window;
 
public class LoadFromCSVController extends GenericForwardComposer {
    private Window loadfromcsv;
    private Label titleLabel;
    private Textbox pathTextbox;
    private Button browseButton;
    private Button okButton;
    private Button backButton;
 
    public LoadFromCSVController(){
        super();
    }
 
    public void onCreate$loadfromcsv(Event event) throws Exception {
        loadfromcsv.doModal();
    }
 
    public void onCreate$titleLabel(Event event){
        titleLabel.setValue("Test");
    }
}
Et ma fonction appellant cette fenêtre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public void displayFromCSVFile() throws Exception {
        try {
            LoadFromCSVController win = (LoadFromCSVController) Executions.getCurrent().createComponents("loadFromCSV.zul", null, null);
        } catch (Exception ex) {
            Messagebox.show(ex.getMessage(), "", Messagebox.OK, Messagebox.ERROR);
        }
    }
J'ai changé un peu les noms donc ne crier pas si y a un pb de nommage du package ou de l'apply / controller.

Mon pb au final est le suivant : j'ai une exception qui est générée. Le message de l'exception est le suivant : "org.zkoss.zul.Window".
Pourtant quand je ferme le messagebox, j'ai bien ma fenetre avec mes 3 compos qui se courent après.

Une idée du schmilblick ?

Par avance un grand grand MERCI.