/o//commerce-media/accounts/-1/images/18755871?download=true
The following has evaluated to null or missing:
==> channel.items [in template "3192443#3192485#null" at line 4, column 89]
----
Tip: It's the step after the last dot that caused this error, not those before it.
----
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: product = restClient.get("/headless-c... [in template "3192443#3192485#null" at line 4, column 9]
----
1<#assign
2 channel = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels?accountId=-1&filter=siteGroupId eq '${themeDisplay.getScopeGroupId()}'")
3
4 product = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channel.items[0].id + "/products/" + CPDefinition_cProductId.getData() + "?accountId=-1&nestedFields=categories,productSpecifications,skus&skus.accountId=-1&skus.currencyCode=USD")
5 productSpecifications = product.productSpecifications![]
6
7 licenseSpecifications = productSpecifications?filter(spec -> stringUtil.equals(spec.specificationKey, "license"))
8 storefrontVideoURLSpecifications = productSpecifications?filter(spec -> stringUtil.equals(spec.specificationKey, "app-storefront-video-url"))
9
10 licenseValue = (licenseSpecifications[0].value)!""
11 storefrontVideoURLValue = (storefrontVideoURLSpecifications[0].value)!""
12/>
13
14<span class="title">${languageUtil.get(locale, "description")}</span>
15
16<#if description.getData()?has_content>
17 <div class="description-content mt-4">
18 ${description.getData()}
19 </div>
20</#if>
21
22<div>
23 <#if licenseSpecifications?has_content>
24 <span class="title">${languageUtil.get(locale, "license")}</span>
25
26 <div class="description-content mt-4">
27 ${licenseValue}
28 </div>
29 </#if>
30</div>
31
32<#if storefrontVideoURLSpecifications?has_content>
33 <script>
34 setTimeout(function () {
35 Liferay.fire('plyr:play', { videoURL: "${storefrontVideoURLValue}" });
36 }, 300);
37 </script>
38</#if>
39
40<style ${nonceAttribute}>
41
42 .description-content {
43 font-size: 18px;
44 line-height: 32px;
45 }
46
47 .title {
48 font-size: 24px;
49 font-weight: 600;
50 }
51
52</style>
Réalisateur
Publisher Date
January 26, 2024
Deployment Method
Liferay Self-Hosted
Liferay PaaS
App Type
Version
Versions prises en charge
Standard Price
Help and Support
Partager le lien
HTML Example
A paragraph is a self-contained unit of a discourse in writing dealing with a particular point or idea. Paragraphs are usually an expected part of formal writing, used to organize longer prose.