Breadcrumb

Asset Publisher

An error occurred while processing the template.
Java method "com.sun.proxy.$Proxy133.getBlogsEntry(long)" threw an exception when invoked on com.sun.proxy.$Proxy133 object "com.liferay.mentions.internal.service.MentionsBlogsEntryServiceWrapper@5a0217f8"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign blog = blogsEntryLocalService...  [in template "20116#20152#1635425" at line 115, column 1]
----
1<style> 
2.sectionspace { 
3    padding: 40px 0px; 
4
5.polution { 
6    background-color: #F2FAFF; 
7    width: 100%; 
8    float: left; 
9    padding-bottom: 35px; 
10
11.polution .poluimg { 
12    width: 50%; 
13    float: left; 
14
15.polution .poluimg .mobileheading{ 
16    display:none; 
17
18.polution .poluimgright { 
19    width: 50%; 
20    float: left; 
21
22.polution .poluimgright .topcontent { 
23    background-color: #fff; 
24    padding: 20px 0; 
25    position: relative; 
26
27.polution .poluimgright .topcontent h3 { 
28    display: inline-block; 
29    font-size:35px; 
30    margin-left:35px; 
31
32.polution .poluimgright .topcontent>a { 
33    float: right; 
34    font-size: 12px; 
35    padding-top: 10px; 
36    color: #1488c9; 
37    position:absolute; 
38    right:0px; 
39    top: 45px; 
40
41.polution .poluimgright .tackelwrap { 
42    padding: 30px; 
43
44.polution .poluimgright .tackelwrap .btloginename { 
45    padding-top: 20px; 
46    position:relative; 
47
48.polution .poluimgright .tackelwrap .btloginename > .innerdate{ 
49    position:absolute; 
50    top:10px; 
51    left:50px; 
52
53.polution .mobilearticle{ 
54    display:none; 
55
56@media only screen and (max-width: 768px){ 
57  .sectionspace { 
58    padding: 25px 0px; 
59
60  .polution { 
61      padding-bottom: 0; 
62
63  .polution .poluimg { 
64      width: 100%; 
65
66  .polution .poluimg .mobileheading { 
67      display: block; 
68      font-size: 24px; 
69      margin: 0; 
70      display: block; 
71      background: #fff; 
72      text-align: center; 
73      padding-bottom: 20px; 
74      color: #1589CA; 
75
76  .polution .poluimgright { 
77      width: 100%; 
78
79 
80  .polution .poluimgright .topcontent { 
81      display: none; 
82
83  .polution .mobilearticle { 
84      display: block; 
85      font-size: 12px; 
86      padding-top: 30px; 
87      color: #1488c9; 
88      text-align: center; 
89      margin: 0 auto; 
90      background: #fff; 
91      width: 100%; 
92      float: left; 
93
94   
95
96 
97</style> 
98<#assign page_group = layout.getGroup() /> 
99<#assign site_friendly_url = page_group.getFriendlyURL()> 
100<#assign page_friendly_url = layout.getFriendlyURL()> 
101<#assign friendly_url = site_friendly_url +"/"+page_friendly_url> 
102<#assign site_url = htmlUtil.escape(page_group.getDisplayURL(themeDisplay, false))> 
103<#assign blogsEntryLocalService = serviceLocator.findService("com.liferay.blogs.kernel.service.BlogsEntryLocalService") /> 
104 
105<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
106<#assign OrderByComparatorFactoryUtil = staticUtil["com.liferay.portal.kernel.util.OrderByComparatorFactoryUtil"] /> 
107<#assign categoriesOrderBy = OrderByComparatorFactoryUtil.create("assetentry", ["modifiedDate", false]) /> 
108 
109<#assign blogIdStr = request.getParameter("detailed_blog")!'0' /> 
110<#assign blogId = blogIdStr?number /> 
111 
112 
113 
114<#if blogId != 0> 
115<#assign blog = blogsEntryLocalService.getBlogsEntry(blogId) /> 
116<#assign cusBlogEntry = assetEntryLocalService.fetchEntry("com.liferay.blogs.kernel.model.BlogsEntry", blogId) /> 
117<#assign cusEntry = assetEntryLocalService.getAssetEntry(cusBlogEntry.entryId) /> 
118<#assign categories = cusEntry.getCategories() /> 
119<#if themeDisplay.isSignedIn()> 
120    <#assign cssClass = "cussignedIn" /> 
121<#else> 
122    <#assign cssClass = "cussignedout" /> 
123</#if> 
124<div class="blog-detail-page" id="${cssClass}"> 
125	<div class="blog-inner"> 
126		<h1 class="heading"> 
127			<#assign heading = htmlUtil.escape(blog.getTitle()) /> 
128			${heading} 
129		</h1> 
130		<div class="banner-wrap"> 
131			<img alt="thumbnail" class="img-responsive desktop-banner" src="${blog.getCoverImageURL(themeDisplay)}"> 
132			<img alt="thumbnail" class="img-responsive mobile-banner" src="${blog.getSmallImageURL(themeDisplay)}"> 
133			 
134		<#-- Social Media Icon --> 
135		    <ul class="social-icon"> 
136    			<li class="share-icon"> 
137    				<a href="http://www.facebook.com/sharer.php?u=${site_url}/blog-inner?detailed_blog=${blog.getEntryId()}&Heading=${heading}" id="hvyb" data-title="Facebook" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" target="_blank"><i class="icon-facebook"></i></a> 
138    			</li> 
139    			<li class="share-icon"> 
140    				<a href="https://twitter.com/intent/tweet?text=${blog.getUrlTitle()};tw_p=tweetbutton;url=${site_url}/blog-inner?detailed_blog=${blog.getEntryId()}&Heading=${heading}" id="uzmk" data-title="Twitter" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" target="_blank"><i class="icon-twitter"></i></a> 
141    			</li> 
142    			<li class="share-icon"> 
143    				<a href="http://www.linkedin.com/shareArticle?&amp;mini=true&amp;url=${site_url}/blog-inner?detailed_blog=${blog.getEntryId()}&Heading=${heading};summary=" id="dxzz" data-title="LinkedIn" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" target="_blank"><i class="icon-linkedin"></i></a> 
144    			</li> 
145    		</ul> 
146		<#-- Social Media Icon close --> 
147    		 
148			<div class="author-details-flag"> 
149				 
150				<span class="flag"> 
151				Report <@getFlagsIcon /> 
152				</span> 
153			</div> 
154		</div> 
155		<#assign description = blog.getDescription() /> 
156		<#if validator.isNull(description)> 
157		<#assign description = blog.getContent() /> 
158		</#if> 
159		<div class="description"> 
160			${description} 
161		</div> 
162		<div class="entry-categories"> 
163            <#if categories?? && categories?has_content> 
164                <#list categories as item> 
165                    <#if item.name?? && item.name != 'All Blogs'> 
166                        <#assign categoryURL = site_url + "/blogs/-/categories/" + item.getCategoryId()?string + "#categories-wrapper" /> 
167                        <a href="${categoryURL}">${item.name}</a> 
168                    </#if> 
169                </#list> 
170            </#if> 
171		</div> 
172	</div> 
173	<div> 
174        <@getRelatedAssets /> 
175    </div> 
176	<div class="discussion-wrapper comments"> 
177	    <h2>Comments</h2> 
178	    <@getDiscussion />  
179    </div> 
180</div> 
181 
182<#macro getDiscussion> 
183    <#assign assetRenderer = cusEntry.getAssetRenderer() /> 
184    <#assign url = themeDisplay.getPortalURL()+themeDisplay.getURLCurrent() /> 
185	<#if getterUtil.getBoolean(enableComments) && assetRenderer.isCommentable()> 
186		<br /> 
187 
188		<#assign discussionURL = renderResponse.createActionURL() /> 
189 
190		${discussionURL.setParameter("javax.portlet.action", "invokeTaglibDiscussion")} 
191 
192		<@liferay_ui["discussion"] 
193			className=cusBlogEntry .getClassName() 
194			classPK=cusBlogEntry .getClassPK() 
195			ratingsEnabled=getterUtil.getBoolean(enableCommentRatings) 
196			userId=assetRenderer.getUserId() 
197		/> 
198	</#if> 
199</#macro> 
200<#macro getFlagsIcon> 
201    <#if getterUtil.getBoolean(enableFlags)> 
202        <@liferay_flags["flags"] 
203            className="com.liferay.blogs.kernel.model.BlogsEntry" 
204            classPK=cusEntry.classPK 
205            contentTitle=htmlUtil.escape(blog.getTitle()) 
206            label=false 
207            reportedUserId=cusEntry.getUserId() 
208        /> 
209     </#if> 
210</#macro> 
211<#macro getRelatedAssets> 
212         
213       <#if categories?? && categories?has_content> 
214            <#assign count=0 /> 
215                <#list categories as item> 
216                    <#if item.name?? && item.name != 'All Blogs'> 
217                        <#assign categoryId = item.getCategoryId() /> 
218                         
219                        <#if assetEntryLocalService.hasAssetCategoryAssetEntries(categoryId) && count == 0> 
220                            <#list assetEntryLocalService.getAssetCategoryAssetEntries(categoryId,0,1) as relatedAsset> 
221                        <#if relatedAsset.getClassPK()!= blogId >     
222                           <#assign relatedBlog=blogsEntryLocalService.getBlogsEntry(relatedAsset.getClassPK()) /> 
223                            <#assign heading = htmlUtil.escape(relatedBlog.getTitle()) /> 
224                                <#assign description = relatedBlog.getDescription() /> 
225                        		<#if validator.isNull(description)> 
226                        		<#assign description = relatedBlog.getContent() /> 
227                        		</#if> 
228 
229 
230 
231 
232<section class="wrapper sectionspace"> 
233        <div class="container-1280"> 
234            <div class="polution"> 
235                <div class="poluimg"> 
236                    <h3 class="mobileheading"><a href="${site_url}/blog-inner?detailed_blog=${relatedAsset.getClassPK()}&Heading=${heading}">Up Next</a></h3> 
237                    <#if relatedBlog.getCoverImageURL(themeDisplay)??> 
238                    <img src="${relatedBlog.getCoverImageURL(themeDisplay)}" alt=""> 
239                    </#if> 
240                </div> 
241 
242                <div class="poluimgright"> 
243                    <div class="topcontent"> 
244                        <h3><a href="${site_url}/blog-inner?detailed_blog=${relatedAsset.getClassPK()}&Heading=${heading}">Up Next</a></h3> 
245                        <a href="${site_url}/blogs">MORE ARTICLES <img src="images/more-arrow.png" alt=""></a> 
246                    </div> 
247 
248                    <div class="tackelwrap"> 
249                        <small>${item.name}</small> 
250                        <h2>${heading}</h2> 
251                        <p> 
252                            ${stringUtil.shorten(htmlUtil.stripHtml(description), 100)} 
253                        </p> 
254                        <div class="btloginename"> 
255                                 
256                             
257                        </div> 
258                    </div> 
259                </div> 
260 
261                <a href="${site_url}/blogs" class="mobilearticle">MORE ARTICLES <img src="images/more-arrow.png" alt=""></a> 
262            </div> 
263        </div> 
264    </section> 
265<#assign count = count+1 /> 
266                           </#if>   
267                            </#list> 
268                        </#if> 
269                    </#if> 
270                </#list> 
271            </#if> 
272</#macro> 
273<#else> 
274    <h1 id="noblogid" data-href="${portalUtil.getCurrentURL(request)}">No Blogs to show</h1> 
275</#if> 
276 
277<script> 
278    $(function(){ 
279       $('#cussignedIn .lfr-discussion-body .button-holder .btn-primary').on('click', function(){ location.reload() }); 
280    }); 
281    $('.dialog-footer>btn').click(function(){  location.replace("${themeDisplay.getPortalURL()}"+'/'+"${themeDisplay.getURLCurrent()}");  }) 
282</script> 

Asset Publisher