Estado del tiempo
Java method "com.liferay.portal.kernel.util.Http.URLtoString(String)" threw an exception when invoked on com.liferay.portal.template.engine.TemplateContextHelper$HttpWrapper object "com.liferay.portal.template.engine.TemplateContextHelper$HttpWrapper@48425fb5"; see cause exception in the Java stack trace.
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign jsonContentString = httpUtil... [in template "42020#42061#187210" at line 7, column 5]
----
1<#assign structureData = locationID.getSiblings()>
2
3<div class="weather-container">
4 <#list structureData as location>
5 <#assign locationId = location.getData()>
6 <#assign urlString = "https://api.tutiempo.net/json/?lan=es&apid=zwYzqa4XaX4nr7l&lid=" + locationId>
7 <#assign jsonContentString = httpUtil.URLtoString(urlString)>
8 <#assign jsonObject = jsonFactoryUtil.createJSONObject(jsonContentString)>
9 <#assign locality = jsonObject.getJSONObject("locality")>
10
11 <div class="weather-info">
12 <div class="header">
13 <p>El tiempo en ${locality.getString("name")}, ${locality.getString("country")}</p>
14 </div>
15 <div class="time-data">
16 <div class="daydata hoy">
17 <div class="icon">
18 <img alt="${jsonObject.day1.getString("text")}" title="${jsonObject.day1.getString("text")}" src="https://v5i.tutiempo.net/wi/01/90/${jsonObject.day1.getString("icon")}.png" />
19 </div>
20 <div class="details">
21 <p class="it">
22 ${jsonObject.day1.getString("temperature_max")}°C | ${jsonObject.day1.getString("temperature_min")}°C
23 </p>
24 <p class="wind">
25 ${jsonObject.day1.getString("wind")} km/h
26 </p>
27 </div>
28 </div>
29 <div class="daydata pasado-manana">
30 <h3>Hoy</h3>
31 <div class="icon">
32 <img alt="${jsonObject.day1.getString("text")}" title="${jsonObject.day1.getString("text")}" src="https://v5i.tutiempo.net/wi/01/50/${jsonObject.day1.getString("icon")}.png"/>
33 </div>
34 <div class="details">
35 <p class="it">
36 ${jsonObject.day1.getString("temperature_max")}°C | ${jsonObject.day1.getString("temperature_min")}°C
37 </p>
38 </div>
39 </div>
40 <div class="daydata pasado-manana">
41 <h3>Mañana</h3>
42 <div class="icon">
43 <img alt="${jsonObject.day3.getString("text")}" title="${jsonObject.day3.getString("text")}" src="https://v5i.tutiempo.net/wi/01/50/${jsonObject.day3.getString("icon")}.png"/>
44 </div>
45 <div class="details">
46 <p class="it">
47 ${jsonObject.day3.getString("temperature_max")}°C | ${jsonObject.day3.getString("temperature_min")}°C
48 </p>
49 </div>
50 </div>
51 <div class="daydata pasado-manana">
52 <h3>Pasado mañana</h3>
53 <div class="icon">
54 <img alt="${jsonObject.day4.getString("text")}" title="${jsonObject.day4.getString("text")}" src="https://v5i.tutiempo.net/wi/01/50/${jsonObject.day4.getString("icon")}.png"/>
55 </div>
56 <div class="details">
57 <p class="it">
58 ${jsonObject.day4.getString("temperature_max")}°C | ${jsonObject.day4.getString("temperature_min")}°C
59 </p>
60 </div>
61 </div>
62 </div>
63 </div>
64 </#list>
65</div>