Navegación por categorías

Se ha producido un error al procesar la plantilla.
Java method "com.sun.proxy.$Proxy68.getAssetCategory(long)" threw an exception when invoked on com.sun.proxy.$Proxy68 object "com.liferay.asset.categories.internal.service.AssetCategoryPropertyAssetCategoryLocalServiceWrapper@5cdd1235"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: category = assetCategoryService.getAs...  [in template "217051#217099#573763" at line 49, column 22]
	- Reached through: #assign-container  [in template "217051#217099#573763" at line 49, column 13]
----
1<#assign assetCategoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") 
2		 assetCategoryPropertyService =  serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") 
3		 SAXReaderUtil = staticUtil["com.liferay.portal.kernel.xml.SAXReaderUtil"] 
4		 HtmlUtil = staticUtil["com.liferay.portal.kernel.util.HtmlUtil"] 
5		 layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") 
6		 PortletURLFactoryUtil = staticUtil["com.liferay.portal.kernel.portlet.PortletURLFactoryUtil"] 
7		 PortletRequest = staticUtil["javax.portlet.PortletRequest"]     
8		 journalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")   
9		 ParamUtil = staticUtil["com.liferay.portal.kernel.util.ParamUtil"]              
10         categoryId = ParamUtil.getLong(request,"categoryId", 0) 
11         title =  ParamUtil.getString(request,"title", "") 
12         maxLoop = 100          
13         imageId = ParamUtil.getString(request,"imageId","")          
14/> 
15 
16<#if (categoryId <= 0) > 
17	<#assign categoryId = ParamUtil.getLong(renderRequest,"categoryId", 0)/> 
18</#if> 
19 
20<#if (categoryId <= 0) > 
21    <#if entries?has_content> 
22		<#foreach aCategory in entries?first.getCategories()> 
23			<#assign aCategory = aCategory/> 
24			<#break> 
25		</#foreach> 
26		<#list 1..maxLoop as i> 
27			<#list 1..maxLoop as j> 
28				<#if aCategory.getParentCategory()?has_content> 
29					<#assign aCategory = aCategory.getParentCategory()/> 
30				<#else> 
31					<#assign categoryId = aCategory.getCategoryId()/> 
32			   </#if>   
33			   <#break> 
34			</#list> 
35			<#if (categoryId > 0) > 
36				<#break> 
37			</#if> 
38		</#list> 
39	 </#if> 
40</#if> 
41 
42 
43<nav aria-label="breadcrumb"> 
44    <ol class="breadcrumb"> 
45       <li class="breadcrumb-title"><span>${languageUtil.get(locale,"webasturias.breadcrumb-title")}</span></li> 
46       <#--<li class="breadcrumb-item"><a href="/">${languageUtil.get(locale,"webasturias.breadcrumb-asturias")}</a></li>-->         
47        <#if (categoryId > 0) > 
48 
49            <#assign category = assetCategoryService.getAssetCategory(categoryId) 
50                     categoryAncestors = category.getAncestors() 
51                     breadCrumbContent = ""/> 
52                      
53            <#if categoryAncestors?has_content> 
54                <#foreach categoryAncestor in categoryAncestors> 
55                	 
56                	<#assign hideCategory = false/> 
57                	 
58                	<#-- obtener el contenido de la categoría hija --> 
59                	<#assign contentId = (assetCategoryPropertyService.fetchCategoryProperty(categoryAncestor.getCategoryId(), "idContenido").getValue())!""/> 
60					<#if contentId ? has_content>			         
61		            	<#assign journalArticleSub = journalArticleService.getLatestArticle(groupId,contentId)/> 
62		        		 
63		        		<#if journalArticleSub?has_content> 
64			        		<#-- obtener el contenido de la categoría actual --> 
65			                <#assign document = SAXReaderUtil.read(journalArticleSub.getContentByLocale(locale)) 
66                    		 	pageDetailNode =  document.selectSingleNode("/root/dynamic-element[@name='paginaDetalle']/dynamic-content") 
67                    		 	/> 
68                    		 <#if document.selectSingleNode("/root/dynamic-element[@name='visibleMigas']/dynamic-content")?has_content> 
69                    		 	<#assign visibleMigasNode =  document.selectSingleNode("/root/dynamic-element[@name='visibleMigas']/dynamic-content")  
70                    		 			 visibleMigas =  visibleMigasNode.getText() 
71                    		 			 hideCategory = visibleMigas != "1"/> 
72                    		 </#if> 
73			        	</#if>		 	      		    	  
74			    	  
75				    	 <#if pageDetailNode?has_content && pageDetailNode.getText()?has_content> 
76			        		<#assign  pageDetail = pageDetailNode.getText()/> 
77			        		<#if (pageDetail?index_of("@")>0)> 
78		                		<#assign pageDetailPosition = (pageDetail?index_of("@")-1) 
79		                         	pageDetail = pageDetail[0..pageDetailPosition] 
80		                          	layoutDetail = layoutLocalService.getLayout(themeDisplay.getScopeGroupId(),false,pageDetail?number) 
81		                      	/> 
82		                	</#if> 
83			            <#else> 
84			            	<#assign detailPage = "general" 
85			            	 		 layoutDetail = layoutLocalService.getFriendlyURLLayout(themeDisplay.getScopeGroupId(), false, "/"+detailPage) /> 
86			            </#if> 
87			             
88			            <#assign categoryUrl = PortletURLFactoryUtil.create(request, "com_liferay_asset_categories_navigation_web_portlet_AssetCategoriesNavigationPortlet", layoutDetail.getPlid(), PortletRequest.RENDER_PHASE)    /> 
89	                    ${categoryUrl.setParameter("categoryId",categoryAncestor.getCategoryId()+"")} 
90	                 
91	                	<#if !(hideCategory?has_content && hideCategory)> 
92	                		<#if categoryAncestor.isRootCategory()> 
93		                		<#assign breadCrumbContent = "<li class='breadcrumb-item'><a href='"+categoryUrl+"'>"+categoryAncestor.getTitle(locale)+" </a> </li>"+breadCrumbContent/> 
94		                	<#else> 
95		                    	<#assign breadCrumbContent = "<li class='breadcrumb-item'><a href='"+categoryUrl+"'>"+categoryAncestor.getTitle(locale)+" </a> </li>"+breadCrumbContent/> 
96		                    </#if>	                   		 
97	                   	</#if> 
98                	</#if> 
99                </#foreach> 
100                 
101                ${breadCrumbContent} 
102                 
103            </#if> 
104             
105            <#assign hideCategory = false/> 
106            <#assign contentId = (assetCategoryPropertyService.fetchCategoryProperty(category.getCategoryId(), "idContenido").getValue())!""/> 
107			<#if contentId ? has_content>	 
108            	<#assign journalArticleSub = journalArticleService.getLatestArticle(groupId,contentId)/> 
109        		 
110        		<#if journalArticleSub?has_content> 
111	        		<#-- obtener el contenido de la categoría actual --> 
112	                <#assign document = SAXReaderUtil.read(journalArticleSub.getContentByLocale(locale)) 
113            		 	pageDetailNode =  document.selectSingleNode("/root/dynamic-element[@name='paginaDetalle']/dynamic-content") 
114            		 	/> 
115            		 <#if document.selectSingleNode("/root/dynamic-element[@name='visibleMigas']/dynamic-content")?has_content> 
116            		 	<#assign visibleMigasNode =  document.selectSingleNode("/root/dynamic-element[@name='visibleMigas']/dynamic-content")  
117            		 			 visibleMigas =  visibleMigasNode.getText() 
118            		 			 hideCategory = visibleMigas != "1"/> 
119            		 </#if> 
120	        	</#if>  	  
121	    	  
122		    	<#if pageDetailNode?has_content && pageDetailNode.getText()?has_content> 
123	        		<#assign  pageDetail = pageDetailNode.getText()/> 
124	        		<#if (pageDetail?index_of("@")>0)> 
125                		<#assign pageDetailPosition = (pageDetail?index_of("@")-1) 
126                         	pageDetail = pageDetail[0..pageDetailPosition] 
127                          	layoutDetail = layoutLocalService.getLayout(themeDisplay.getScopeGroupId(),false,pageDetail?number) 
128                      	/> 
129                	</#if> 
130	            <#else> 
131	            	<#if category.isRootCategory()> 
132	            		<#assign detailPage = "inicio"/> 
133	            	<#else> 
134	            		<#assign detailPage = "general"/> 
135	            	</#if> 
136	            	 
137	            	<#assign layoutDetail = layoutLocalService.getFriendlyURLLayout(themeDisplay.getScopeGroupId(), false, "/"+detailPage) /> 
138	            </#if> 
139	             
140	            <#assign categoryUrl = PortletURLFactoryUtil.create(request, "com_liferay_asset_categories_navigation_web_portlet_AssetCategoriesNavigationPortlet", layoutDetail.getPlid(), PortletRequest.RENDER_PHASE)    /> 
141                ${categoryUrl.setParameter("categoryId",category.getCategoryId()+"")} 
142             
143            	<#if !(hideCategory?has_content && hideCategory)> 
144            		<#if category.isRootCategory()> 
145                		<#if title?has_content> 
146                			<li class="breadcrumb-item"><a href="/inicio">${category.getTitle(locale)}</a></li>		                		 
147                		<#else> 
148                			<li class="breadcrumb-item active">${category.getTitle(locale)}</li> 
149                		</#if>  
150                	<#else> 
151                    	<#if title?has_content> 
152                			<li class="breadcrumb-item"><a href="${categoryUrl}<#if imageId ? has_content>?imageId=${imageId}&title=${HtmlUtil.escapeURL(category.getTitle(locale))}</#if>">${category.getTitle(locale)}</a></li>		                		 
153                		<#else> 
154                			<li class="breadcrumb-item active">${category.getTitle(locale)}</li> 
155                		</#if>  
156                    </#if>	                		               		 
157               	</#if> 
158        	</#if> 
159        </#if> 
160        <#if title ? has_content> 
161        	<li class="breadcrumb-item active">${title}</li>  
162        </#if> 
163    </ol> 
164</nav> 
165 
166<script type="text/javascript"> 
167	$( document ).ready(function() { 
168		 if(typeof ga !== "undefined") { 
169		 <#if title ? has_content> 
170		 	var pageName = '${title}'; 
171		 <#elseif category ? has_content> 
172		 	var pageName = '${category.getName()}'; 
173		 <#else> 
174		 	var pageName = location.pathname; 
175		 </#if> 
176			     ga( 'send', 'pageview', { 
177				    'page': pageName, 
178				    'title': pageName 
179				} ); 
180
181	}); 
182</script> 

Navegación por categorías

"Asturias es el espejo en el que nos miramos", afirma la directora de Urbanismo de la Xunta de Galicia

21/05/2021

 

  • La directora general de Ordenación del Territorio y Urbanismo en Galicia, Encarnación Rivas, relató la experiencia de la administración gallega en su regulación urbanística y del suelo en el marco de las Jornadas de Urbanismo Autonómico Comparado que organiza el Gobierno del Principado de Asturias.

En cuanto a la Ley del Suelo, destaca que la norma, que entró en vigor en 2016, termina con la “visión folclórica de los núcleos rurales” y es abordada con medios técnicos propios. Fue una norma consensuada “al extremo” que incorporó el 80 por ciento de las alegaciones de los grupos parlamentarios.

Rivas destacó tres características principales de la normativa gallega.

-Plan básico autonómico para dotar a los ayuntamientos de seguridad jurídica en las acciones sobre el territorio.

-Urbanismo responsable. La intención iniciar era prohibir viviendas en suelo rústico, pero, según explicó, no encontraron respaldo suficiente. Aún así, la normativa es “muy restrictiva”.

-Excepción. Consumo de suelo para determinados usos, que dan un servicio a la ciudadanía, como residencias de la tercera edad, centros educativos o instalaciones deportivas.

En cuanto a la nueva Ley de ordenación del territorio destacó los criterios de simplificación y armonización. Defendió su necesidad, no sólo en términos económicos, sino también como herramienta de reequilibrio territorial, repercusión social y demográfica. “El futuro de un país debe estar planificado, tengo la fuerza que da saber que estamos en la buena ordenación y hemos creado una conciencia colectiva que trasciende a las personas y a las instituciones”, dijo.

Terminó su intervención elogiando el modelo de Asturias: “Siento envidia sana cuando cruzo el Puente de los Santos, de mayor quiero ser asturiana”.

El experto Juan Antonio Caridad Graña inició su intervención destacando las similitudes territoriales entre Galicia y Asturias, por el fuerte componente rural, pero con una gran diferencia. En su opinión, en Asturias no hubo la destrucción del patrimonio rural que se dio en Galicia.

Explicó que las Leyes del suelo en Galicia han utilizado la parroquia como elemento de análisis territorial que permite llevar a cabo el estudio de las zonas rurales. Denominó a esta circunstancia la “densidad de las cosas”. Territorios donde todo tiene nombre, frente a territorios sin esa tradición. “Galicia es un territorio donde todo tiene nombre y donde todo tiene propietario. Esto nos da una ventaja comparativa frente a otros territorios, porque estamos acostumbrados a movernos en la complejidad”, explicó.

El hecho diferencial de la ruralidad hace necesaria la elaboración de leyes propias. En este sentido, destacó un hito en la actualización de las distintas normativas: “Hacíamos urbanismo hacia lo construido, ahora se hace desde la eliminación del riesgo. Que haga el urbanismo sostenible y que evite la construcción sobre suelos que no cumplen, debería estudiarse más en las escuelas”.

Como técnico redactor –“somos los que vamos a los sitios a contar las cosas”- explicó al detalle su experiencia en la redacción del planeamiento de dos ayuntamientos: Sarria y Portas. En este punto, destacó la importancia de explicar a la ciudadanía los criterios legales que dan lugar a las delimitaciones, más que las propias delimitaciones. “Explicamos cuáles son los criterios legales, para que entendieran que este proceso lo tiene todo de objetivo, cómo es la normativa para delimitar un núcleo rural”. Como dato, reseñó que en la parte rural apenas se produjeron alegaciones.