/o//commerce-media/accounts/-1/images/18387757?download=true

Liferay CE Resources Importer
DXP App
Data Modeling, Process & Business Logic
18387708
The Resources Importer app allows front-end developers to package web content, portlet configurations, and layouts together in a theme without saving it as a compiled .LAR file thereby allowing for greater flexibility in its usage between Liferay Portal versions. This app will automatically create associated content when other plugins are deployed that are configured to make use of the Resource Importer app.

This app installs as a Liferay service.
DEVELOPER
テンプレート処理中にエラーが発生しました。
The following has evaluated to null or missing:
==> channel.items  [in template "3192443#3192485#null" at line 18, column 30]

----
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: #assign channelId = channel.items[0].id  [in template "3192443#3192485#null" at line 18, column 9]
----
1<#if themeDisplay?has_content> 
2	<#assign scopeGroupId = themeDisplay.getScopeGroupId() /> 
3</#if> 
4 
5<#if currentURL?has_content> 
6	<#if currentURL?contains('web')> 
7		<#assign 
8			index = 2 
9			partsUrl = currentURL?split('/') 
10			siteName = partsUrl[index..index]?join('/') 
11		/> 
12	</#if> 
13</#if> 
14 
15<#assign channel = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels?accountId=-1&filter=name eq 'Marketplace Channel' and siteGroupId eq '${scopeGroupId}'") /> 
16 
17<#if channel?has_content> 
18	<#assign channelId = channel.items[0].id /> 
19</#if> 
20 
21<#if (CPDefinition_cProductId.getData())??> 
22	<#assign productId = CPDefinition_cProductId.getData() /> 
23</#if> 
24 
25<#assign 
26	product = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/"+ channelId +"/products/"+ productId +"?accountId=-1&nestedFields=productSpecifications") 
27	productSpecifications = product.productSpecifications![] 
28	catalogName=product.catalogName 
29/> 
30 
31<#if catalogName?has_content> 
32	<#assign publisePages=restClient.get("/c/publisherdetailses?filter=publisherName eq '${catalogName}'" ) /> 
33	<#assign redirectPath="https://marketplace.liferay.com/e/publisher-details/29282497"/> 
34	 
35	<#if publisePages?has_content> 
36		<#assign publisePage=publisePages.items /> 
37			<#if publisePage?has_content> 
38						<#assign publisherDetail=publisePage[0]/> 
39			</#if> 
40	</#if> 
41</#if> 
42 
43<div> 
44	<#if productSpecifications?has_content> 
45		<#assign developerNames = productSpecifications?filter(item -> stringUtil.equals(item.specificationKey, "developer-name")) /> 
46 
47		<#if developerNames?has_content> 
48			<#list developerNames as developerName> 
49				<#if publisherDetail?has_content> 
50					<a class="bg-neutral-8" href="${redirectPath}/${publisherDetail.id}"> 
51						${developerName.value} 
52					</a> 
53				<#else> 
54					<a class="bg-neutral-8" 	href="/?developer-name=${developerName.value}"> 
55						${developerName.value} 
56					</a> 
57				</#if> 
58			</#list> 
59		</#if> 
60	</#if> 
61</div> 
DEVELOPER
24/11/21 17:33
Published date
24/11/21 17:33
Published Date
24/11/21 17:33
SUPPORTED OFFERINGS
Liferay PaaS, Liferay Self-Hosted
Supported Versions
6.2
Resource Requirements
Edition
CE
PRICE
Free
help & support
SHARE LINK
Copy & Share

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.