Une erreur s'est produite lors du traitement du gabarit.
No compatible overloaded variation was found; declared parameter types and argument value types mismatch. The FTL type of the argument values were: number (wrapper: f.t.SimpleNumber), string (wrapper: f.t.SimpleScalar), string (wrapper: f.t.SimpleScalar), string (wrapper: f.t.SimpleScalar), extended_hash+string (Locale wrapped into f.e.b.StringModel), string (wrapper: f.t.SimpleScalar). The Java type of the argument values were: Long, String, String, String, String, String. The matching overload was searched among these members: com.liferay.journal.util.impl.JournalContentImpl.getContent(long, String, String, String, com.liferay.portal.kernel.theme.ThemeDisplay), com.liferay.journal.util.impl.JournalContentImpl.getContent(long, String, String, String, com.liferay.portal.kernel.portlet.PortletRequestModel), com.liferay.journal.util.impl.JournalContentImpl.getContent(long, String, String, String, String, com.liferay.portal.kernel.portlet.PortletRequestModel), com.liferay.journal.util.impl.JournalContentImpl.getContent(long, String, String, String, String, com.liferay.portal.kernel.portlet.PortletRequestModel, com.liferay.portal.kernel.theme.ThemeDisplay), com.liferay.journal.util.impl.JournalContentImpl.getContent(long, String, String, String, String, com.liferay.portal.kernel.theme.ThemeDisplay), com.liferay.journal.util.impl.JournalContentImpl.getContent(long, String, String, String) ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign lArticleContent = journalCont... [in template "10155#10193#BI" at line 79, column 5] ----
1<#-- local services -->
2<#assign JournalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
3<#assign AssetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
4<#assign assetVocabularyService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")>
5
6
7
8<#-- journalarticle and assetentry -->
9<#assign articleId = .vars['reserved-article-id'].data />
10<#assign journalArticle = JournalArticleService.getLatestArticle(groupId, articleId) />
11<#assign resourcePK = journalArticle.getResourcePrimKey() />
12<#assign assetEntry = AssetEntryService.getEntry('com.liferay.journal.model.JournalArticle', resourcePK) />
13<#-- <strong>assetEntry</strong> ${assetEntry}<br /> -->
14
15
16
17<#-- get category ids of vocabulary -->
18<#assign Categories = getCategoriesOfVocabulary(assetEntry, "010 Pouvoirs") />
19
20
21
22
23
24
25
26
27
28
29<#--
30Cette template doit présenter tous les articles du BI de la date du nom de l'article
31-->
32<#global lJournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
33<#global lJournalFolderLocalService = serviceLocator.findService("com.liferay.journal.service.JournalFolderLocalService") />
34<#global lCompanyId = company.companyId />
35<#global lClassName = "com.liferay.portlet.journal.model.JournalArticle" />
36<#global lTableName = "CUSTOM_FIELDS" />
37<#global lDptFr = {} />
38<#global lDptDe = {} />
39<#--
40<#global lDptFr = lDptFr + {"PRES2015":"Présidence (PRES)","DFI2015":"Département des finances et des institutions (DFI)","DSSC2015":"Département de la santé, des affaires sociales et de la culture (DSSC)","DFS2015":"Département de la formation et de la sécurité (DFS)","DEET2015":"Département de l'économie, de l'énergie et du territoire (DEET)","DTEE2015":"Département des transports, de l'équipement et de l'environnement (DTEE)"} />
41<#global lDptDe = lDptDe + {"PRES2015":"Präsidium (PRÄS)","DFI2015":"Departement für Finanzen und Institutionen (DFI)","DSSC2015":"Departement für Gesundheit, Soziales und Kultur (DGSK)","DFS2015":"Departement für Bildung und Sicherheit","DEET2015":"Departement für Volkswirtschaft, Energie und Raumentwicklung (DVER)","DTEE2015":"Departement für Verkehr, Bau und Umwelt (DVBU)"} />
42-->
43
44<#global lDptFr = lDptFr + {"PRES2015":"Présidence","DFI2015":"Finances et institutions","DSSC2015":"Santé, affaires sociales et culture","DFS2015":"Formation et sécurité","DEET2015":"Economie, énergie et territoire","DTEE2015":"Transports, équipement et environnement"} />
45
46<#global lDptDe = lDptDe + {"PRES2015":"Präsidium","DFI2015":"Finanzen und Institutionen","DSSC2015":"Gesundheit, Soziales und Kultur","DFS2015":"Bildung und Sicherheit","DEET2015":"Volkswirtschaft, Energie und Raumentwicklung","DTEE2015":"Verkehr, Bau und Umwelt"} />
47
48<#assign lGroupId = groupId?number />
49<#assign lArticleId = .vars['reserved-article-id'].data />
50<#assign lArticle = lJournalArticleLocalService.getArticle(lGroupId,lArticleId?string) />
51<h2>${.vars['reserved-article-title'].data}</h2>
52<p class="metainfo"><em><@getDateAndCategory /></em></p>
53<#assign lItems = lJournalFolderLocalService.getFoldersAndArticles(lGroupId,lArticle.getFolder().getFolderId()) />
54<#assign lBi = {}/>
55<#list lItems as lItem>
56 <#assign lCurrentArticleId = lItem.getArticleId() />
57 <#assign lDefaultLanguage = lItem.getDefaultLanguageId() />
58 <#if lArticleId!= lCurrentArticleId>
59 <#assign lContent = saxReaderUtil.read(lItem.getContent()) >
60 <#assign lOrderNode = getNodes("DptOrder", lContent.getRootElement()) />
61 <#assign lOrder = getStructureValue(lOrderNode[0], lDefaultLanguage)/>
62 <#assign lSortOrderNode = getNodes("SortOrder", lContent.getRootElement()) />
63 <#assign lSortOrder = getStructureValue(lSortOrderNode[0], lDefaultLanguage)/>
64 <#assign lKey = lOrder?string+":"+lSortOrder+":"+lCurrentArticleId />
65 <#assign lDict = {"${lKey}":"${lItem_index}"} />
66 <#assign lBi = lBi + lDict />
67 </#if>
68</#list>
69<#--
70<div class="bi-article-title">${lArticle.getTitleCurrentValue()}</div>
71-->
72
73<#assign lCurrentDpt="" />
74 <div class="vs-media">
75<#list lBi?keys?sort as lKey>
76 <#assign lItemKey = lBi[lKey] />
77 <#assign lCurrentArticle = lItems[lItemKey?number] />
78 <#assign lDefaultLanguage = lCurrentArticle.getDefaultLanguageId() />
79 <#assign lArticleContent = journalContentUtil.getContent(lCurrentArticle.getGroupId(), lCurrentArticle.getArticleId(), lCurrentArticle.getTemplateId(), "VIEW", locale, "") />
80 ${lArticleContent}
81 <#--
82 <#assign lDocument = saxReaderUtil.read(lCurrentArticle.getContent()) />
83 <#assign lDescriptionNode = getNodes("description", lDocument.getRootElement()) />
84 <#assign lDescription = getStructureValue(lDescriptionNode[0], lDefaultLanguage)/>
85 <#assign lDptNode = getNodes("Dpt", lDocument.getRootElement()) />
86 <#assign lDpt = getStructureValue(lDptNode[0], lDefaultLanguage)/>
87 <#assign lCurrentDpt=lDpt />
88 <#assign lDisplayDate = lCurrentArticle.getDisplayDate() />
89 <#if lDisplayDate??>
90 <#assign lDisplayDateStr = lDisplayDate?string["dd.MM.yyyy"] />
91 <#else>
92 <#assign lDisplayDateStr = "" />
93 </#if>
94 <div class="vs-media-body">
95 <#if locale=="de_DE">
96 <div class="vs-media-header">${lDisplayDateStr} | ${lDptDe[lDpt]} | Artikel des BI</div>
97 <#else>
98 <div class="vs-media-header">${lDisplayDateStr} | ${lDptFr[lDpt]} | Article du BI</div>
99 </#if>
100 <div class="vs-media-title">${lCurrentArticle.getTitle(locale,true)}</div>
101 <div class="vs-media-content">${lDescription}</div>
102 <#assign lContactNodes = getNodes("Contact", lDocument.getRootElement()) />
103 <#list lContactNodes as lNodes>
104 <#assign lContactNode = getNodes("Nom", lNodes) />
105 <#assign lName = getStructureValue(lContactNode, "")/>
106 <#assign lContactNode = getNodes("Prénom", lNodes) />
107 <#assign lFirstname = getStructureValue(lContactNode, "")/>
108 <#assign lContactNode = getNodes("Fonction", lNodes) />
109 <#assign lFunction = getStructureValue(lContactNode, "")/>
110 <#assign lContactNode = getNodes("Téléphone", lNodes) />
111 <#assign lTel = getStructureValue(lContactNode, "")/>
112 <#assign lRef = lFirstname + " "+ lName />
113 <#if lFunction?trim != "">
114 <#assign lRef = lRef + ", "+lFunction />
115 </#if>
116 <#if lTel?trim != "">
117 <#assign lRef = lRef + " - "+lTel />
118 </#if>
119 <div class="vs-media-footer">${lRef}</div>
120 </#list>
121
122 </div>-->
123</#list></div>
124
125<#function getNodes pElementName pXmlContent>
126 <#assign lElementXPath = "dynamic-element[@name='"+pElementName+"']"/>
127 <#assign lXPathSelector = saxReaderUtil.createXPath(lElementXPath) />
128 <#assign lResult = lXPathSelector.selectNodes(pXmlContent) />
129 <#return lResult/>
130</#function>
131
132<#function getStructureValue pNode pDefaultLanguage>
133 <#assign lResult = "" />
134 <#assign lCurElementXPath = "dynamic-content[@language-id='" + locale + "']" />
135 <#assign lXPathSelector = saxReaderUtil.createXPath(lCurElementXPath) />
136 <#if lXPathSelector.selectSingleNode(pNode)??>
137 <#assign lValue = lXPathSelector.selectSingleNode(pNode) />
138 <#assign lResult = lValue.getStringValue() />
139 <#else>
140 <#assign lCurElementXPath = "dynamic-content[@language-id='fr_FR']" />
141 <#assign lXPathSelector = saxReaderUtil.createXPath(lCurElementXPath) />
142 <#if lXPathSelector.selectSingleNode(pNode)?? >
143 <#assign lValue = lXPathSelector.selectSingleNode(pNode) />
144 <#assign lResult = lValue.getStringValue() />
145 <#else>
146 <#assign lCurElementXPath = "dynamic-content[@language-id='" + pDefaultLanguage + "']" />
147 <#assign lXPathSelector = saxReaderUtil.createXPath(lCurElementXPath) />
148 <#assign lValue = lXPathSelector.selectSingleNode(pNode) />
149 <#assign lResult = lValue.getStringValue() />
150 </#if>
151 </#if>
152 <#return lResult?string />
153</#function>
154
155<#macro displayArticleDate dateType journalArticle>
156 <#if serviceLocator??>
157 <#if dateType == "published">
158 ${journalArticle.displayDate?string["dd.MM.yyyy"]}
159 <#elseif dateType == "modified">
160 ${journalArticle.modifiedDate?string["dd.MM.yyyy"]}
161 <#elseif dateType == "created">
162 ${journalArticle.createDate?string["dd.MM.yyyy"]}
163 </#if>
164 </#if>
165</#macro>
166
167
168<#macro getDateAndCategory>
169 <#-- get date and name of category -->
170 <@displayArticleDate dateType="published" journalArticle=journalArticle />
171 <#list Categories as cur_cat>
172 <#-- <br />${cur_cat.getCategoryId()} -->
173 | ${cur_cat.getDescription(locale)?trim}
174 </#list><br />
175</#macro>
176
177<#function getCategoriesOfVocabulary assetEntry vocabularyName>
178
179 <#assign categories = assetEntry.getCategories() />
180 <#assign categorylist = [] />
181 <#list categories as category>
182 <#assign vocabulary = assetVocabularyService.getVocabulary(category.vocabularyId)/>
183 <#if vocabulary.name == vocabularyName>
184 <#-- <#assign categorylist = categorylist + [ category.getDescription(locale) ] /> -->
185 <#assign categorylist = categorylist + [ category ] />
186 </#if>
187 </#list>
188 <#return categorylist />
189
190</#function>