Débutant - Besoin d'aide pour l'écriture d'un DataSelector

Raimana REY · le 16/04/16 à 04:19

Bonjour,

j'ai créer une class DocumentDTE qui hérite de FileDocument avec plusieurs champs dont un champ Date intitulé "dateDeVerification".

Je souhaiterai faire un selector ayant pour but de prendre uniquement les documents dont la dateDeVerification est inférieur à 6Mois par rapport à la date du jour. (< Aujourd'hui - 6 mois)

J'ai récuperé un morceau de code dans la documentation développeur et essayé de l'adapter mais sans succès.

voici le code que j'ai actuellement:



DataSelector selector = new DataSelector() {
public boolean isSelected(Data data) {
Date lastsixmonth = new Date(System.currentTimeMillis() - 233280000000L);
Date vdate = (Date) data.getFieldValue("dateDeVerification", userLang,true);
return vdate == null || vdate.before(lastsixmonth);
}
}

%>

<jalios:query name="resultSet" dataset="<%= channel.getAllPublicationSet(DocumentDTE.class, loggedMember) %>" selector="<%= selector %>"/>

Merci

12 pts
Alex Rameaux Wafo Defo - le 16/04/16 à 11:07
Meilleure réponse

Ligne 4

Date vdate = (DocumentDTE) data.getDateDeVerification();

#1

Exception:

Type mismatch: cannot convert from DocumentDTE to Date

Raimana REY · le 19/04/16 à 03:25
#2

Petite erreur dans la réponse. Il faut ecrire à la place :

Date vdate = ((DocumentDTE) data).getDateDeVerification();

ou alors :

DocumentDTE doc = (DocumentDTE) data;
Date vdate = doc.getDateDeVerification();
Alex Rameaux Wafo Defo · le 19/04/16 à 08:59
#3

Le selector fonctionne bien maintenant merci Alex !

Raimana REY · le 20/04/16 à 03:51
8 pts