2016-03-08 4 views
0

У меня есть пользовательский портлет, который показывает некоторое содержимое Liferay, и я должен быть в состоянии оценить это содержимое. я восстановить информацию о рейтингах этого содержания дляОценить контент с помощью API LIferay

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

но сумасшедшая вещь, когда я обновить любое поле этой таблицы, как currentRate.getTotalEntries(), данные не обновляются.

Я приложил полный метод и журналы.

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()); 

Бревно следующее:

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 

И каждый раз, когда я getTotalEntries, значение '0', не обновляется.

Любая идея?

Заранее спасибо

ответ

0

Я думал, что обновление базы данных будет автоматически установить метод, но я был неправ.

Для создания обновления в DDBB необходима следующая строка.

RatingsStatsLocalServiceUtil.updateRatingsStats(currentRate); 

Сомнение решена :)