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

Vaadin 7 Control Panel
Icon
DXP App
18474574

The Vaadin 7 Control Panel centralizes management of the shared Vaadin 7 environment.

The Vaadin 7 Control Panel features:

* Overview page summarizes all details of the shared Vaadin environment including the version of Vaadin, the add ons included in the widgetset compile and the date/time when the widget set was compiled.

* An "About Vaadin" page defines common Vaadin terminology to help those new to the Vaadin ecosystem.

* Easy upgrade to a new version of Vaadin (including the 7.3 line), even when server is blocked from general internet access (via manual upload).

* During the upgrade, all Vaadin portlets are updated (if setting is used) to the same version of Vaadin being deployed. This will allow for a Vaadin upgrade but not redeploy all Vaadin portlets to benefit from the upgrade.

* Easy upload and integration of Vaadin Add-Ons (no more EXT plugin deployment or manual jar dropping).

* Create and edit custom Vaadin themes in the control panel, including import and export capability. This allows for a theme to be created in one environment and migrated to other environments (such as code promotion from dev->test->qa->prod or deploying to all nodes in a cluster).

* Settings to control how the control panel works, including settings to increase memory allocation for compiling widget sets and themes (necessary when there are a lot of add ons included in the widget set builds).

* Detailed output for the upgrade process, the theme compilation process, and the widget set compilation process.

* When deployed, if Vaadin 6 is present in Liferay it will be purged and replaced with Vaadin 7.2.7 from the control panel.

* The Vaadin 7 Control Panel supports I18N, although currently the only supplied language bundle is English (please contact support@vaadinonliferay.com to submit a language bundle).

There is a service tier provided by vaadin7-control-panel-portlet-service-1.0.0.0.jar. This service tier allows Vaadin 7 portlets the ability to check the installed version of Vaadin 7, determine if the Valo theme is available, list all installed add ons and themes, etc.

Additionally Vaadin 7 plugins can take advantage of the service tier to support hot deploy of Vaadin add ons and themes. This will allow, for example, MarketPlace Vaadin 7 plugins that ship with necessary dependent add ons and/or themes, will allow a Vaadin 7 plugin deployment to the nodes of a cluster with all dependent add ons/themes without having to manually deploy via the control panel, and it will allow for Vaadin 7 plugin promotion (dev->test->qa->prod) to include dependent add ons/themes without requiring manual deployments before hand.

NOTE:

When deployed, the Vaadin 7 Control Panel will purge Vaadin 6 from Liferay if it is still there (because Vaadin 6 and Vaadin 7 cannot coexist in the shared environment), but sometimes this can cause problems for the application container. You should restart the Liferay environment after deploying the Vaadin 7 Control Panel.

DEVELOPER
テンプレート処理中にエラーが発生しました。
For "." left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> specifications  [in template "3192443#3192485#null" at line 16, column 36]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if specifications?has_content && spe...  [in template "3192443#3192485#null" at line 16, column 1]
----
1<#assign 
2	channels = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels") 
3	channelId = "" 
4/> 
5 
6<#list channels.items as channel> 
7	<#if channel.name == "Marketplace Channel"> 
8		<#assign channelId = channel.id /> 
9	</#if> 
10</#list> 
11 
12<#if (CPDefinition_cProductId.getData())??> 
13	<#assign specifications = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channelId + "/products/" + CPDefinition_cProductId.getData() + "/product-specifications") /> 
14</#if> 
15 
16<#if specifications?has_content && specifications.items?has_content> 
17	<#list specifications.items as specification> 
18		<#if specification.specificationKey?has_content && specification.specificationKey == "developer-name"> 
19			${specification.value} 
20		</#if> 
21	</#list> 
22</#if> 
DEVELOPER
16/07/28 0:00
Published date
April 7, 2029
Published Date
16/07/28 0:00
SUPPORTED OFFERINGS
Self-Hosted, Self-Managed
Supported Versions
6.2
Resource Requirements
テンプレート処理中にエラーが発生しました。
For "." left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> specifications  [in template "3192443#3192485#null" at line 17, column 36]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if specifications?has_content && spe...  [in template "3192443#3192485#null" at line 17, column 1]
----
1<#assign 
2	channelId="" 
3	channels=restClient.get("/headless-commerce-delivery-catalog/v1.0/channels") 
4	filteredSpecifications=[] 
5/> 
6 
7<#list channels.items as channel> 
8	<#if channel.name=="Marketplace Channel"> 
9		<#assign channelId = channel.id /> 
10	</#if> 
11</#list> 
12 
13<#if (CPDefinition_cProductId.getData())??> 
14	<#assign specifications = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channelId + "/products/" + CPDefinition_cProductId.getData() + "/product-specifications") /> 
15</#if> 
16 
17<#if specifications?has_content && specifications.items?has_content> 
18 
19	<#assign 
20		cpuQuantity = "" 
21		memoryQuantity = "" 
22	/> 
23 
24	<#list specifications.items?sort_by("specificationKey") as specification> 
25		<#if stringUtil.equals(specification.value, "cloud")> 
26		    <script> 
27		        var resourceRequirements = document.querySelector(".marketplace-resource-requirements") 
28						 
29						resourceRequirements.classList.remove("d-none"); 
30		    </script> 
31		</#if> 
32		 
33		<#if specification.specificationKey?has_content && (stringUtil.equals(specification.specificationKey, "cpu") || stringUtil.equals(specification.specificationKey, "ram"))> 
34			<#if stringUtil.equals(specification.specificationKey, "cpu" )> 
35				<#assign cpuQuantity = specification.value /> 
36 
37				<#if cpuQuantity?has_content> 
38					${cpuQuantity} 
39					<#if cpuQuantity?eval gt 1> 
40						CPUS 
41					</#if> 
42					<#if cpuQuantity?eval lt 2> 
43						CPU 
44					</#if> 
45				</#if> 
46			</#if> 
47 
48			<#if stringUtil.equals(specification.specificationKey, "ram")> 
49				<#assign memoryQuantity = specification.value /> 
50 
51				<#if cpuQuantity?has_content && memoryQuantity?has_content >,</#if> 
52			</#if> 
53 
54			<#if stringUtil.equals(specification.specificationKey, "ram")> 
55				<#assign memoryQuantity = specification.value /> 
56 
57				<#if memoryQuantity?has_content> 
58					${memoryQuantity} GB RAM 
59				</#if> 
60			</#if> 
61		</#if> 
62	</#list> 
63</#if> 
Edition
CE, EE
PRICE
テンプレート処理中にエラーが発生しました。
For "." left-hand operand: Expected a hash, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> specifications  [in template "3192443#3192485#null" at line 16, column 36]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if specifications?has_content && spe...  [in template "3192443#3192485#null" at line 16, column 1]
----
1<#assign 
2	channelId="" 
3	channels=restClient.get("/headless-commerce-delivery-catalog/v1.0/channels") 
4	filteredSpecifications=[] /> 
5 
6<#list channels.items as channel> 
7	<#if channel.name=="Marketplace Channel"> 
8		<#assign channelId = channel.id /> 
9	</#if> 
10</#list> 
11 
12<#if (CPDefinition_cProductId.getData())??> 
13	<#assign specifications = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/" + channelId + "/products/" + CPDefinition_cProductId.getData() + "/product-specifications") /> 
14</#if> 
15 
16<#if specifications?has_content && specifications.items?has_content> 
17	<#list specifications.items?sort_by("specificationKey") as specification> 
18		<#if specification.specificationKey?has_content> 
19			<#if stringUtil.equals(specification.specificationKey, "price-model" )> 
20				<#assign priceModel = specification.value /> 
21				<#if priceModel?has_content> 
22					${priceModel} 
23				</#if> 
24			</#if> 
25		</#if> 
26	</#list> 
27</#if> 
help & support
Terms & Conditions
SHARE LINK
Copy & Share Link

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.