Я действительно нашел ошибку.Я сделал интенсификацию значений с помощью сервиса, и теперь он получает весь класс в параметре следующим образом.
public String savedol(ActionEvent actionEvent) {
FacesContext context = FacesContext.getCurrentInstance();
try {
Long idFile = (Long) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("idFile ");
this.file = this.ficheService.find(idFile );
doleance.setFile(file);
doleance.setClient(file.getCustumer());
doleance.setPays(file.getCustumer().getCountry());
this.complaintsDetailsService.saveOne(doleance);
context.addMessage(null, new FacesMessage(Constante.SAVE_SUCCESSFUL));
this.complaint= new ComplaintsDetails();
this.file= new File();
return "/fileComplaints/complaints.xhtml?faces-redirect=true";
} else {
this.complaintsDetailsService.updateOne(complaint);
this.file = new File();
context.addMessage(null, new FacesMessage(Constante.MODIF_SUCCESSFUL));
}
return "/fileComplaints/complaints.xhtml?faces-redirect=true";
} catch (Exception e) {
e.getMessage();
context.addMessage(null, new FacesMessage(Constante.SAVE_UNDONE));
this.complaintsDetailsService.updateOne(doleance);
this.fileService.updateOne(fiche);
}
this.file = new File();
return null;}
Теперь он сохраняет значения клиента и восстановленных стран из файла.с этим this.file = this.ficheService.find(idFile );
Если это может помочь кому-то еще.