2014-09-05 45 views
0

這是我使用的代碼:getStructureId返回真實ID減1?

JournalArticle article = null; 
article = JournalArticleLocalServiceUtil.getLatestArticle(classPk); 
String structureId = article.getStructureId(); 

當我調試,我發現structureId始終是真正的structureId但減去1! 爲什麼?我需要知道它是否是Liferay bug ...

謝謝, 我是Liferay 6.2 ce ga2。

回答

2

JournalArticle的字段structureId相當於不是DDMStructure.structureId,而是DDMStructure.structureKey。我承認,這可能會讓人感到困惑。

這是由於DDMStructure的對象生成機制。當您使用控制面板添加新結構時,使用counterLocalService(檢查this代碼)自動生成structureKey。正如在structureId is generated之前發生的那樣,它始終小於1。