Salut,
J'ai le même problème, j'arrive à récupérer les information sur la photo uploadée mais au moment d'enregistrer elle n'est plus là. Je ne comprend pas ce qui se passe.
Voici la méthode qui recupere le contenu du fichier uploadé (byte[]):
1 2 3 4 5 6 7 8 9 10
|
public void handleFileUpload(FileUploadEvent uploadEvent) {
try {
UploadedFile file = uploadEvent.getFile();
utilisateur.setPhoto(file.getContents());
LOGGER.log(Level.INFO, "File uploaded, size: {0}", utilisateur.getPhoto().length);
} catch (Exception e) {
LOGGER.log(Level.SEVERE, "handleFileUpload", e);
}
} |
L'instruction
LOGGER.log(Level.INFO, "File uploaded, size: {0}", utilisateur.getPhoto().length);
me donne bien la taille de la photo en octets.
Voici la méthode qui permet d'enregistrer un utilisateur:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
public String doCreateUtilisateur() {
try {
LOGGER.log(Level.INFO, "Taille de la photo avant: {0}", utilisateur.getPhoto().length);
utilisateurSessionBean.create(utilisateur);
LOGGER.log(Level.INFO, "Utilisateur {0} cr\u00e9\u00e9.", utilisateur);
if (utilisateur.getPhoto() != null) {
LOGGER.log(Level.INFO, "Taille de la photo après: {0}", utilisateur.getPhoto().length);
} else {
LOGGER.log(Level.INFO, "Taille de la photo après: {0}", 0);
}
utilisateur = new Utilisateur();
} catch (Exception e) {
LOGGER.log(Level.SEVERE, "Erreur lors de le création.", e);
}
return "list.xhtml";
} |
L'instruction
LOGGER.log(Level.INFO, "Taille de la photo avant: {0}", utilisateur.getPhoto().length);
génère une exception de type NullPointerException (donc utilisateur.getPhoto() retourne null).
Je ne comprend vraiment pas pour quoi.
Partager