Bonjour
Je rencontre des difficultés avec le composant fileUpload de RichFaces. Le composant est placé au sein d'un formulaire comportant d'autres inputs. Je configure le fileUploadListener de façon à ce qu'une méthode d'un backing bean soit executée lorsqu'un fichier est uploadé. Le problème c'est que dans cette méthode, les autres input du formulaire sont null. Il semblerait que le composant fileUpload ne submite que le file mais pas les autres input du formulaire. Or j'ai aussi besoin de ces inputs.
Voici le code de ma page :
Le code du backing bean :
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 <h:form> ... <tr> <td colspan="4" align="center"> <rich:fileUpload addControlLabel="Add the desired file ..." fileUploadListener="#{monManagedBean.onUploadCompleted}" maxFilesQuantity="1" acceptedTypes="csv" /> </td> <td align="right"> <h:outputLabel id="autreInputLabel" value="Autre input" /> </td> <td align="left"> <h:inputText id="autreInput" value="#{monManagedBean.monAutreParam}" /> </td> </tr> ... </h:form>
Voilà !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 private String monAutreParam; // getters et setters ... public void onUploadCompleted(final UploadEvent uploadEvent) { final UploadItem uploadItem = uploadEvent.getUploadItem(); final File file = uploadItem.getFile(); // ... code où j'ai besoin de monAutreParam, mais à ce niveau il est toujours null }
Donc comment faire pour récupérer côté serveur, dans une méthode de mon backing bean, à la fois le file uploadé et tous les autres params du formulaire ?
Merci d'avance pour votre aide
Partager