2016-03-08 2 views
0

J'ai un portlet personnalisé qui affiche certains contenus de Liferay et je dois pouvoir évaluer ces contenus. récupérer les informations contenues des évaluations de ce contenu pourÉvaluer un contenu à l'aide de l'API LIferay

RatingsStats currentRate = RatingsStatsLocalServiceUtil.getStats(JournalArticle.class.getName(), 
        article.getResourcePrimKey()); 

mais la chose est fou, quand je mets à jour tous les domaines de ce tableau comme currentRate.getTotalEntries(), les données ne sont pas mis à jour.

J'ai joint la méthode complète et les journaux.

article = JournalArticleLocalServiceUtil.getArticle(primKey);   
RatingsStats currentRate = RatingsStatsLocalServiceUtil.getStats(JournalArticle.class.getName(), 
        article.getResourcePrimKey()); 
LOG.debug("ratingStats entrada a editar: " + currentRate.getStatsId()); 
LOG.debug("currentRate.getTotalEntries() BEFORE: " + currentRate.getTotalEntries()); 
currentRate.setTotalEntries(currentRate.getTotalEntries()+1); 
LOG.debug("currentRate.getTotalEntries() AFTER: " + currentRate.getTotalEntries()); 

Le journal est le suivant:

11:35:18,634 DEBUG [AgregadoresContenidosController:262] ratingStats entrada a editar: 110551 
11:35:18,634 DEBUG [AgregadoresContenidosController:263] currentRate.getTotalEntries() BEFORE: 0 
11:35:18,635 DEBUG [AgregadoresContenidosController:265] currentRate.getTotalEntries() AFTER: 1 

Et chaque fois que je getTotalEntries, la valeur est '0', n'est pas mis à jour.

Une idée?

Merci à l'avance

Répondre

0

Je pensais que la mise à jour sur la base de données sera automatiquement avec l'ensemble de la méthode, mais je me trompais.

La ligne suivante est nécessaire pour effectuer la mise à jour en DDBB.

RatingsStatsLocalServiceUtil.updateRatingsStats(currentRate); 

doute résolu :)