Se ha producido un error al procesar la plantilla.
Java method "com.liferay.portal.model.impl.UserImpl.getRoles()" threw an exception when invoked on com.liferay.portal.model.impl.UserImpl object "{mvccVersion=41, uuid=5e2857ae-4787-f453-c6f8-5991c04ff8cb, userId=20120, companyId=20116, createDate=Fri Jun 09 16:54:07 GMT 2017, modifiedDate=Mon Oct 27 20:15:47 GMT 2025, defaultUser=true, contactId=20121, password=AAAAoAAB9AAKUoNVY3jS/xJcd8UePjHFQtI5hCSX0qE2MD13, passwordEncrypted=true, passwordReset=false, passwordModifiedDate=Fri Aug 16 09:15:11 GMT 2024, digest=, reminderQueryQuestion=, reminderQueryAnswer=, graceLoginCount=0, screenName=20120, emailAddress=default@liferay.com, facebookId=0, googleUserId=, ldapServerId=0, openId=, portraitId=0, languageId=es_ES, timeZoneId=Europe/Paris, greeting=Welcome!, comments=, firstName=, middleName=, lastName=, jobTitle=, loginDate=Fri Jun 09 16:54:07 GMT 2017, loginIP=, lastLoginDate=null, lastLoginIP=, lastFailedLoginDate=null, failedLoginAttempts=0, lockout=false, lockoutDate=null, agreedToTermsOfUse=true, emailAddressVerified=false, status=0}"; see cause exception in the Java stack trace.
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign usrRoles = user.getRoles() [in template "20116#20160#114810" at line 17, column 1]
---- 1<div class="cv-content cv-marco-app cv-marco-slider"> 2<div class="carousel slide" data-ride="carousel" data-interval="5000" data-pause="hover" id="myCarousel"> 3<!-- Indicators --> 4<ol class="carousel-indicators"> 5 <#list entries as curEntry> 6 <#if curEntry?index==0> 7 <li class="active" data-slide-to="${(curEntry?index)}" data-target="#myCarousel"></li> 8 </#if> 9 <#if curEntry?index!=0> 10 <li data-slide-to="${(curEntry?index)}" data-target="#myCarousel"></li> 11 </#if> 12 </#list> 13</ol> 14 15<#assign theme_display = themeDisplay /> 16<#assign is_signed_in = themeDisplay.isSignedIn() /> 17<#assign usrRoles = user.getRoles()> 18<#assign libreria = false/> 19<#assign impersonated = false/> 20<#list usrRoles as usrRole> 21 <#if usrRole.getName() == "Libreria"> 22 <#assign libreria = true/> 23 </#if> 24</#list> 25 26<#assign impersonated = themeDisplay.isImpersonated() /> 27 28<!-- Wrapper for slides --> 29 30<div class="carousel-inner" role="listbox"> 31 32<#if entries?has_content> 33 <#list entries as curEntry> 34 35 <#assign urlImagen = ""/> 36 <#assign titulo = ""/> 37 <#assign texto1 = ""/> 38 <#assign texto2 = ""/> 39 <#assign urlVista = ""/> 40 <#assign hipervinculo = ""/> 41 <#assign hipervinculoPrv = ""/> 42 <#assign nuevaPagina = false/> 43 <#assign assetRenderer = curEntry.getAssetRenderer() /> 44 <#assign article = assetRenderer.getArticle()/> 45 <#assign documento = saxReaderUtil.read(article.getContent())/> 46 <#assign rootElement = documento.getRootElement()/> 47 <#assign idArticulo = article.getId()/> 48 49 50 <#assign titulo = curEntry.getTitle(locale)/> 51 52 <#list rootElement.elements() as dynamicElement> 53 <#if dynamicElement.attributeValue("name")=='imagenBanner'> 54 <#assign urlImagen = dynamicElement.element("dynamic-content").getText()/> 55 </#if> 56 <#if dynamicElement.attributeValue("name")=='textoBannerArriba'> 57 <#assign texto1 = dynamicElement.element("dynamic-content").getText()/> 58 </#if> 59 <#if dynamicElement.attributeValue("name")=='textoBannerAbajo'> 60 <#assign texto2 = dynamicElement.element("dynamic-content").getText()/> 61 </#if> 62 <#if dynamicElement.attributeValue("name")=='Hipervinculo'> 63 <#assign hipervinculo = dynamicElement.element("dynamic-content").getText()/> 64 </#if> 65 <#if dynamicElement.attributeValue("name")=='HipervinculoPrv'> 66 <#assign hipervinculoPrv = dynamicElement.element("dynamic-content").getText()/> 67 </#if> 68 <#if dynamicElement.attributeValue("name")=='NuevaPagina'> 69 <#if dynamicElement.element("dynamic-content").getText()=="true"> 70 <#assign nuevaPagina = true /> 71 </#if> 72 </#if> 73 </#list> 74 75 <#if curEntry?index==0> 76 <#if hipervinculoPrv!="" && libreria && nuevaPagina> 77 <div class="row item active img-banner libreria" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="window.open('${hipervinculoPrv}','_blank')"> 78 <#elseif hipervinculo!="" && nuevaPagina> 79 <div class="row item active img-banner" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="window.open('${hipervinculo}','_blank')"> 80 <#elseif hipervinculoPrv!="" && libreria> 81 <div class="row item active img-banner libreria" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="location.href='${hipervinculoPrv}'"> 82 <#elseif hipervinculo!="" > 83 <div class="row item active img-banner" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="location.href='${hipervinculo}'"> 84 <#else> 85 <div class="row item active img-banner" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center;"> 86 </#if> 87 </#if> 88 <#if curEntry?index!=0> 89 <#if hipervinculoPrv!="" && libreria && nuevaPagina> 90 <div class="row item img-banner libreria" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="window.open('${hipervinculoPrv}','_blank')"> 91 <#elseif hipervinculo!=""&& nuevaPagina> 92 <div class="row item img-banner" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="window.open('${hipervinculoPrv}','_blank')"> 93 <#elseif hipervinculoPrv!="" && libreria> 94 <div class="row item img-banner libreria" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="location.href='${hipervinculoPrv}'"> 95 <#elseif hipervinculo!=""> 96 <div class="row item img-banner" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center; cursor: pointer;" onclick="location.href='${hipervinculo}'"> 97 <#else> 98 <div class="row item img-banner" style="background-image: url('${urlImagen}'); background-size: contain; background-position:center center;"> 99 </#if> 100 </#if> 101 <div class="carousel-caption"> 102 <div class="col-sm-6"></div> 103 <div class="col-sm-6"> 104 <#if texto1!=""> 105 <div class="row text-center caja-arriba"> 106 <h2>${texto1}</h2> 107 </div> 108 </#if> 109 <#if texto2!=""> 110 <div class="row text-center caja-abajo"> 111 <p>${texto2}</p> 112 </div> 113 </#if> 114 </div> 115 </div> 116 </div> 117 118 </#list> 119</#if> 120 121</div> 122<!-- Left and right controls --> 123<a class="left carousel-control flecha" data-slide="prev" href="#myCarousel" role="button" style="background-image:none;"> 124<div class="caja-boton-carousel-anterior"><i class="icon-anterior"> </i> 125 <span class="sr-only">Previous</span></div></a> 126<a class="right carousel-control flecha" data-slide="next" href="#myCarousel" role="button" style="background-image:none;"> 127<div class="caja-boton-carousel-siguiente"><i class="icon-siguiente"> </i> 128<span class="sr-only">Next</span></div></a> 129</div> Boletines
BOLETINES MENSUALES
Consulte en esta sección nuestra colección de boletines mensuales con todas las novedades y recomendaciones de las más prestigiosas editoriales.
Noticias
ÚLTIMAS NOTICIAS
Ponemos a tu alcance las noticias más interesantes del mundo del libro