Japanese restaurant milan leather chairs wooden table
Japanese restaurant milan leather chairs wooden table

Contemporary Japan in the heart of Milan. Not only a gastronomic experience

In Milan, in the heart of Porta Nuova, Maurizio Lai designs the new IYO Aalto, a restaurant where Japan creates an original interpretation between materials and light cuts. The references to Japanese tradition are subtle, leaving room for a contemporary design language.

IYO Aalto is the only Japanese restaurant that has been awarded a Michelin star in Italy. Overlooking the Alvar Aalto Square, at the foot of Torre Solaria, the restaurant is the product of the entrepreneur Claudio Liu who wanted to bring a new gastronomic experience to the heart of the new Milan. 

Japanese restaurant milano plexiglass ceiling

The project evokes the influences of the Rising Sun through a sensitivity that is not in fashion, far from stereotypes and clichés. The references to Japanese tradition are very subtle, leaving room for a design language with a pure and contemporary style. The result is a place where new aesthetic canons can be found.

Japanese restaurant milano plexiglass ceiling

The space, of 320 square metres, winds through a path that embraces the large open kitchen, the wine cellar, the exclusive Sushi Banco room and the Gastronomic Restaurant. Natural materials such as walnut wood, porphyry, brass and leather are combined with sophisticated and technological elements. 

Japanese restaurant milano plexiglass ceiling

This is the definition of a restaurant with an absolute taste looking for deep symmetries between places, moments of experience, aesthetic, tactile and material atmospheres. As a result, we find the founding values of the IYO gastronomic experience transferred into space. IYO Aalto combines two souls in a single gesture: the tradition of Tokyo with the most contemporary flavours of the cuisine of the Rising Sun. A twofold sampling experience in environments designed right down to the smallest detail.

Japanese restaurant milano plexiglass ceiling

Gallery

An error occurred while processing the template.
The following has evaluated to null or missing:
==> value_list[seq_index]  [in template "20101#20127#2776835" at line 127, column 62]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to be 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 key_value = value_list[seq_in...  [in template "20101#20127#2776835" at line 127, column 41]
----
1<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") /> 
2<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
3<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
4<#assign groupLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService") /> 
5 
6<#-- 
7Mostro il titolo del portlet qui 
8--> 
9<#assign languageId = themeDisplay.getLanguageId()> 
10<#assign propertyKey = "portletSetupTitle_"+languageId> 
11 
12<#assign title = ""> 
13<#assign counter = 1> 
14 
15<#if portletPreferences?has_content> 
16    <#list portletPreferences?keys as key> 
17     
18        <#if key == propertyKey> 
19            <#assign values = portletPreferences[key] /> 
20            <#if values?has_content> 
21                <#list values as value> 
22                    <#assign title = value> 
23                </#list> 
24            </#if> 
25        </#if> 
26     
27     </#list> 
28</#if> 
29 
30<#assign size = 0> 
31 
32<#list entries as curEntry> 
33    <#assign renderer = curEntry.getAssetRenderer() > 
34    <#assign className = renderer.getClassName() > 
35    <#if className == "com.liferay.journal.model.JournalArticle"> 
36        <#assign article = renderer.getArticle() > 
37         
38        <#assign currentArticleAssetEntryId = curEntry.getEntryId() /> 
39        <#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) /> 
40         
41        <#assign relatedDesigner = "" /> 
42         
43        <#list currentArticleRelatedLinks as related_entry> 
44         
45            <#assign relatedAssetEntryId = related_entry.getEntryId1() /> 
46             
47            <#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
48         
49            <#assign relatedGroup = groupLocalService.getGroup(relatedAssetEntry.groupId) /> 
50             
51            <#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
52                 
53            <#assign relatedArticle = journalArticleLocalService.fetchLatestArticle(relatedAssetEntryPrimKey)!'' /> 
54                 
55            <#if relatedArticle?has_content> 
56                 
57                <#assign relatedArticleStructureKey = relatedArticle.getDDMStructure().getStructureKey() /> 
58                 
59                <#if relatedArticleStructureKey = "DESIGNER-PROFILE"> 
60                 
61                    <#assign size = size + 1> 
62                     
63                </#if> 
64                 
65            </#if> 
66        </#list> 
67    </#if> 
68</#list> 
69 
70<#if (size > 0) > 
71    <h2 class="portlet-title-text">${title}</h2> 
72</#if> 
73 
74<#-- un ARTICLE può essere legato a un DESIGNER, un COMPANY, un SHOWCASE --> 
75 
76<#list entries as curEntry> 
77 
78    <#assign renderer = curEntry.getAssetRenderer() > 
79    <#assign className = renderer.getClassName() > 
80    <#if className == "com.liferay.journal.model.JournalArticle"> 
81        <#assign article = renderer.getArticle() > 
82         
83        <#assign currentArticleAssetEntryId = curEntry.getEntryId() /> 
84        <#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) /> 
85         
86        <#assign relatedDesigner = "" /> 
87         
88        <#list currentArticleRelatedLinks as related_entry> 
89         
90            <#assign relatedAssetEntryId = related_entry.getEntryId1() /> 
91             
92            <#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
93         
94            <#assign relatedGroup = groupLocalService.getGroup(relatedAssetEntry.groupId) /> 
95             
96            <#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
97                 
98            <#assign relatedArticle = journalArticleLocalService.fetchLatestArticle(relatedAssetEntryPrimKey)!'' /> 
99                 
100            <#if relatedArticle?has_content> 
101                 
102                <#assign relatedArticleStructureKey = relatedArticle.getDDMStructure().getStructureKey() /> 
103                 
104                <#if relatedArticleStructureKey = "DESIGNER-PROFILE"> 
105                 
106                    <#assign relatedDesigner = relatedArticle> 
107                     
108                </#if> 
109                 
110            </#if> 
111        </#list> 
112         
113        <#if relatedDesigner?has_content> 
114         
115            <#assign relatedArticleId = relatedDesigner.getArticleId() /> 
116            <#assign articleGroupId = relatedDesigner.getGroupId() > 
117            			 
118			<#assign designer = journalArticleLocalService.getArticle(articleGroupId, relatedArticleId) /> 
119			 
120			<#assign designerFriendlyURL = "" /> 
121			<#assign designerFirendlyURLMap = designer.getFriendlyURLMap() /> 
122			<#assign key_list = designerFirendlyURLMap?keys/> 
123			<#assign value_list = designerFirendlyURLMap?values/> 
124			<#list key_list as key> 
125				<#assign seq_index = key_list?seq_index_of(key) /> 
126				<#if seq_index != -1 > 
127					<#assign key_value = value_list[seq_index]/> 
128					<#if key == themeDisplay.getLocale()> 
129						<#-- assign designerFriendlyURL = stringUtil.replace(key_value, "/-/", "") --> 
130						<#assign designerFriendlyURL = key_value /> 
131					</#if> 
132				</#if> 
133			</#list> 
134						 
135			<#assign hasLinkDesigner = false /> 
136			<#if designerFriendlyURL != "" > 
137				<#assign hasLinkDesigner = articleLanguage.hasLanguageCategory(request, designer, themeDisplay.getScopeGroupId(), themeDisplay.getCompanyId(), 
138					"/arkitube", true) && articleLanguage.isFriendlyURLCorrectLanguage(request, designer, themeDisplay.getLanguageId(), 
139					designerFriendlyURL, themeDisplay.getScopeGroupId(), true, "/arkitube") /> 
140			</#if> 
141			 
142			<#assign cssClassWrappDesigner = "mb-4" /> 
143			<#if (counter < entries?size)> 
144                <#assign cssClassWrappDesigner = "mb-5" /> 
145            </#if> 
146			 
147			<div class="${cssClassWrappDesigner}"> 
148				<#if hasLinkDesigner> 
149					<a href="${assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, relatedAssetEntry, true)}"> 
150				</#if>	 
151						<@liferay_journal["journal-article"] 
152							articleId="${relatedDesigner.getArticleId()}" 
153							ddmTemplateKey="MINIMAL_DESIGNER_INFO" 
154							groupId=articleGroupId /> 
155				<#if hasLinkDesigner>			 
156					</a> 
157				</#if> 
158			</div> 
159         
160        </#if> 
161         
162    </#if> 
163	 
164	<#assign counter += 1> 
165</#list> 
0