Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> texto  [in template "20098#20124#370250" at line 128, column 11]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${texto}  [in template "20098#20124#370250" at line 128, column 9]
----
1<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
2<#assign catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService" )> 
3<#assign vocabularyService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")> 
4<#assign currentArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data)> 
5<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey()> 
6<#assign categoriesList = catLocalService.getCategories("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey)/> 
7<#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
8<#assign displaydate = .vars['reserved-article-display-date'].data> 
9<#assign modifieddate = .vars['reserved-article-modified-date'].data> 
10 
11<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
12<#assign themeDisplay = serviceContext.getThemeDisplay() /> 
13<#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
14 
15<#setting locale="pt_BR"> 
16 
17<div class="noticia-aberta"> 
18    <div class="categorias"> 
19        <#list categoriesList as category> 
20            <#if category.name != "Vídeo"> 
21                <span class="tag"> ${category.name} </span> 
22            </#if> 
23        </#list> 
24    </div> 
25    <!-- Título da Matéria AQUI --> 
26    <h1 class="noticia-titulo">${.vars['reserved-article-title'].data}</h1> 
27 
28    <#if .vars['reserved-article-description'].data?has_content> 
29        <#assign descricao = .vars['reserved-article-description'].data/> 
30    <#else> 
31        <#if video_descricao?has_content> 
32            <#assign descricao = video_descricao.getData()/> 
33        <#else> 
34            <#assign descricao = "" /> 
35        </#if>   
36    </#if> 
37 
38    <div class="descricao"> 
39        <p>${descricao}</p> 
40    </div> 
41 
42 
43    <#-- Parse the date to a date object --> 
44    <#assign displaydate = (displaydate?datetime("EEE, d MMM yyyy HH:mm:ss Z")?long - 3*60*60*1000)?number_to_datetime> 
45    <#assign modifieddate = (modifieddate?datetime("EEE, d MMM yyyy HH:mm:ss Z")?long - 3*60*60*1000)?number_to_datetime> 
46 
47    <div class="datas-redesocial"> 
48        <div class="row">       
49            <div class="datas col-lg-6 col-md-12 align-items-center"> 
50            <span class="data-publicado "> 
51                ${"Publicado em " + displaydate?string("dd/MM/yyyy HHhmm")} 
52            </span> 
53            <span class="separador">|</span> 
54            <span class="data-modificado "> 
55                ${"Atualizado em " + modifieddate?string("dd/MM/yyyy HHhmm")} 
56            </span> 
57            </div> 
58            <div class="redesocial col-lg-4 offset-lg-2 col-md-10 offset-md-1"> 
59                <button type="button" class="btn btn-link" onClick="window.print()"><span class="share-imprimir"></span></button> 
60                <span class="separador">|</span> 
61                <span class="compartilhe">Compartilhe: </span> 
62                <a href="https://api.whatsapp.com/send?text=${currentUrl}" target="_blank" data-action="share/whatsapp/share"><span class="share-whatsapp"></span></a> 
63                <a href="https://www.facebook.com/sharer.php?u=${currentUrl}" target="_blank"><span class="share-facebook"></span></a> 
64                <a href="https://twitter.com/intent/tweet?url=${currentUrl}" target="_blank"><span class="share-twitter"></span></a> 
65                <a href="https://www.linkedin.com/shareArticle?mini=true&url=${currentUrl}" target="_blank"><span class="share-linkedin"></span></a> 
66                <button type="button" class="btn btn-link" id="copy" title="Copiar link" onclick="copyToClipboard('${currentUrl}')"> 
67                    <span class="share-url"></span> 
68                </button> 
69                <script> 
70                $(function () { 
71                    $("#copy").tooltip() 
72                }) 
73 
74                function copyToClipboard(str) { 
75                    const el = document.createElement('textarea'); 
76                    el.value = str; 
77                    el.setAttribute('readonly', ''); 
78                    el.style.position = 'absolute'; 
79                    el.style.left = '-9999px'; 
80                    document.body.appendChild(el); 
81                    el.select(); 
82                    document.execCommand('copy'); 
83                    document.body.removeChild(el); 
84                    $("#copy").tooltip("option", "content", "Copiado!"); 
85                    $("#copy").tooltip("option", "show"); 
86                    setTimeout(() => {  
87                    $("#copy").tooltip("option", "hide");  
88                    $("#copy").tooltip("option", "disable");  
89                    $("#copy").tooltip("option", "content", "Copiar Link");  
90                    $("#copy").tooltip("option", "enable"); 
91                    }, 3000); 
92                }; 
93                </script> 
94            </div> 
95        </div> 
96    </div> 
97    <#if url_video?has_content> 
98        <#if url_video.getData()?? && url_video.getData() != ""> 
99            <#assign videoId = url_video.getData()?split("watch?v=") > 
100            <#assign videoId = videoId[1] > 
101            <#assign videoId = videoId?split(" ") > 
102            <#assign videoId = videoId[0] > 
103        </#if> 
104    </#if> 
105 
106 
107    <#if videoId?has_content> 
108        <div class="video d-flex justify-content-center"> 
109            <iframe width="768" height="576" src="https://www.youtube.com/embed/${videoId}" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> 
110        </div> 
111    </#if> 
112 
113    <#if video_texto.getData()?? && video_texto.getData() != ""> 
114        <#assign texto = video_texto.getData()?split("<iframe ") > 
115        <#assign videoId = texto[1] > 
116        <#assign texto = texto[0]?split("</p>")[0] > 
117        <#assign texto = texto + "</p>" > 
118        <#assign videoId = videoId?split('https://www.youtube.com/embed/') > 
119        <#if videoId?size gt 1> 
120            <#assign videoId = videoId[1] > 
121        <#else> 
122            <#assign videoId = videoId[0]?split('http://www.youtube.com/embed/')[1] > 
123        </#if> 
124        <#assign videoId = videoId?split('"')[0] > 
125    </#if> 
126 
127    <div class="noticia-texto"> 
128        ${texto} 
129    </div> 
130 
131    <#if videoId != ""> 
132        <div class="video d-flex justify-content-center"> 
133            <iframe width="768" height="576" src="https://www.youtube.com/embed/${videoId}" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> 
134        </div> 
135    </#if> 
136 
137    <#if video_autor?has_content> 
138        <p style="margin-top: 2rem;" class="autor">${video_autor.getData()}</p> 
139    </#if> 
140 
141    <#if categoriesList?has_content> 
142        <div class="categorias-footer"> 
143            <span class="categoria">Categoria</span> 
144            <div class="categorias-lista"> 
145                <#list categoriesList as category> 
146                    <#if category.name != "Vídeo"> 
147                        <span class="tag"> ${category.name} </span> 
148                    </#if> 
149                </#list> 
150            </div> 
151        </div>   
152    </#if> 
153 
154 
155    <#assign tags = .vars["reserved-article-asset-tag-names"].data> 
156    <#if tags?has_content> 
157        <div class="tags"> 
158            <span>Tags: </span> 
159            <div class="tags-lista"> 
160                <#assign tags = tags?split(",")> 
161                <#list tags as tag> 
162                    <a href="#${tag}"><span class="tag">${tag}</span></a> 
163                </#list> 
164            </div> 
165        </div> 
166    </#if> 
167         
168 
169    <div class="datas-redesocial redesocial-footer"> 
170        <div class="row">   
171            <div class="redesocial col-lg-3 offset-lg-9 col-md-6 offset-md-6"> 
172            <span class="compartilhe">Compartilhe: </span> 
173                <a href="https://api.whatsapp.com/send?text=${currentUrl}" target="_blank" data-action="share/whatsapp/share"><span class="share-whatsapp"></span></a> 
174                <a href="https://www.facebook.com/sharer.php?u=${currentUrl}" target="_blank"><span class="share-facebook"></span></a> 
175                <a href="https://twitter.com/intent/tweet?url=${currentUrl}" target="_blank"><span class="share-twitter"></span></a> 
176                <a href="https://www.linkedin.com/shareArticle?mini=true&url=${currentUrl}" target="_blank"><span class="share-linkedin"></span></a> 
177                <button type="button" class="btn btn-link" id="copy" title="Copiar link" onclick="copyToClipboard('${currentUrl}')"> 
178                    <span class="share-url"></span> 
179                </button> 
180                <script> 
181                $(function () { 
182                    $("#copy").tooltip() 
183                }) 
184 
185                function copyToClipboard(str) { 
186                    const el = document.createElement('textarea'); 
187                    el.value = str; 
188                    el.setAttribute('readonly', ''); 
189                    el.style.position = 'absolute'; 
190                    el.style.left = '-9999px'; 
191                    document.body.appendChild(el); 
192                    el.select(); 
193                    document.execCommand('copy'); 
194                    document.body.removeChild(el); 
195                    $("#copy").tooltip("option", "content", "Copiado!"); 
196                    $("#copy").tooltip("option", "show"); 
197                    setTimeout(() => {  
198                    $("#copy").tooltip("option", "hide");  
199                    $("#copy").tooltip("option", "disable");  
200                    $("#copy").tooltip("option", "content", "Copiar Link");  
201                    $("#copy").tooltip("option", "enable"); 
202                    }, 3000); 
203                }; 
204                </script> 
205            </div> 
206        </div> 
207    </div> 
208</div> 
209 
210<#--  --------------------  --> 
211 
212<#function getDocTitle cur_documento_da_noticia> 
213    <#if cur_documento_da_noticia.titulodocumento?? && cur_documento_da_noticia.titulodocumento.getData()?? && cur_documento_da_noticia.titulodocumento.getData() != ""> 
214        <#assign tituloDoc = cur_documento_da_noticia.titulodocumento.getData() />  
215    <#else> 
216        <#assign groupId = 0 /> 
217        <#assign uuId = 0 /> 
218            <#list cur_documento_da_noticia.getData()?keep_before_last("?")?split("/") as linkPart> 
219            <#assign groupId = (linkPart?index == 2)?then(linkPart?number, groupId) /> 
220            <#assign uuId = (linkPart?index == 5)?then(linkPart, uuId) /> 
221        </#list> 
222        <#assign dlFileEntryService = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryService') />  
223        <#assign file = dlFileEntryService.getFileEntryByUuidAndGroupId(uuId,groupId)  /> 
224        <#assign tituloDoc = file.fileName /> 
225    </#if> 
226    <#return tituloDoc> 
227</#function>