Asset Publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> curEntry.getAssetRenderer().getURLImagePreview(renderRequest)  [in template "20115#20151#47127" at line 39, column 53]

----
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: ${curEntry.getAssetRenderer().getURLI...  [in template "20115#20151#47127" at line 39, column 51]
----
1<#assign selectedCat = paramUtil.getString(renderRequest, "categoryId", "0")/> 
2<#assign selectedCatLong = getterUtil.getLong(selectedCat)/> 
3<#if (selectedCatLong > 0)> 
4    <#assign AssetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
5    <#assign cat = AssetCategoryLocalService.fetchCategory(selectedCatLong) /> 
6</#if> 
7 
8<div class="col-md-12 bg_box" style="border: 1px solid #ccc; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px;"> 
9 <#if cat?has_content> 
10 <h1 style="background-color: #628498; color: #fff; 
11    padding: 8px 15px; margin: 0px -15px; 
12    font-size: 20px;"> 
13                                    ${cat.getName()} 
14                                     
15                                    </h1></#if>     
16    <#if (selectedCatLong > 0)></#if> 
17		<div id="fourd3" class="carouseller">  
18			<a href="javascript:void(0)" class="carouseller__left">‹</a>  
19			<div class="carouseller__wrap">  
20                <div class="carouseller__list">  
21                     <#if entries?has_content> 
22                         <#list entries as curEntry> 
23                         <#assign selectedCatExist = true/> 
24 
25                          <#list curEntry.getCategoryIds() as curCat> 
26                            <#if (selectedCatLong > 0 &&  curCat != selectedCatLong)> 
27                               <#assign selectedCatExist = true/> 
28 
29                            </#if> 
30                         </#list> 
31                           <#if selectedCatExist> 
32                             <div class="car__4"> 
33                                <div class="Product_details"> 
34                                 
35                                     
36                                    
37                                 
38                                   <a href="${assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, curEntry.getAssetRenderer(), curEntry, true)}"> 
39                                        <img src="${curEntry.getAssetRenderer().getURLImagePreview(renderRequest)}"  class="image"/> 
40                                        <div class="overlay1"> 
41                                            <div class="text">${curEntry.getTitle(locale)}</div> 
42                                         </div> 
43                                    </a> 
44                                </div> 
45                            </div> 
46                          </#if> 
47                        </#list> 
48                    </#if> 
49                </div> 
50            </div> 
51			<a href="javascript:void(0)" class="carouseller__right">›</a> 
52		</div> 
53    <script type="text/javascript"> 
54        $(function() { 
55            $(fourd3).carouseller(); 
56        }); 
57    </script> 
58</div> 
59<script src="/documents/20142/53532/carouseller.js"></script> 
60<script src="/documents/20142/53532/jquery.easing.1.3.js"></script> 
61 
62<style> 
63.carouseller:before, .carouseller:after {  content: " ";  display: table;} 
64.carouseller:after { clear: both;} 
65.carouseller { position: relative;} 
66 
67.carouseller [class*="car__"]{ 
68    display: inline-block;  
69    position: relative; 
70    margin-left: 0.2564102564102564% !important; 
71    *margin-left: 0.25109110747408616% !important; 
72    float: left; 
73    -webkit-box-sizing: border-box; 
74       -moz-box-sizing: border-box; 
75            box-sizing: border-box; 
76
77.carouseller [class*="car__"]:first-child  { margin-left: 0 !important;} 
78.carouseller [class*="car__"]:nth-child(n+7) { display: none;} 
79 
80.carouseller .car__by5 { width: 1.793789743589745%;} 
81.carouseller .car__12 { width: 10%;} 
82.carouseller .car__6 { width: 4.8837948717948715%;} 
83.carouseller .car__4 { width: 3.1703931623931625%;} 
84.carouseller .car__3 { width: 2.3136923076923077%;} 
85.carouseller .car__2 { width: 1.452991452991453%;} 
86.carouseller .car__1 { width: 0.5982905982905983%;} 
87 
88.carouseller .carouseller__list { position: relative; width: 997.4358974358974%;} 
89.carouseller .carouseller__wrap { overflow: hidden; position: relative; margin: 0 35px} 
90 
91.carouseller .carouseller__left,  
92.carouseller .carouseller__right { 
93    position: absolute;  
94    margin: 0;  
95    bottom: 30%; 
96    background: none repeat scroll 0 0 transparent; 
97    font-size: 80px; 
98    opacity: 0.5; 
99    text-align: center; 
100    color: #000; 
101    text-decoration: none; 
102
103.carouseller .carouseller__left { left: 0;} 
104.carouseller .carouseller__right { right: 0;} 
105.carouseller .carouseller__left:hover, .carouseller .carouseller__:hover { opacity: 0.8;} 
106 
107 
108/*------Responsive-----------*/ 
109/* Portrait tablet to landscape and desktop */ 
110@media (min-width: 768px) and (max-width: 979px) {  
111    .carouseller .car__by5, 
112    .carouseller .car__12, 
113    .carouseller .car__6, 
114    .carouseller .car__4, 
115    .carouseller .car__3, 
116    .carouseller .car__2, 
117    .carouseller .car__1 { width: 3.1623931623931625%;} 
118
119/* Landscape phone to portrait tablet */ 
120@media (max-width: 767px) { 
121    .carouseller .car__by5, 
122    .carouseller .car__12, 
123    .carouseller .car__6, 
124    .carouseller .car__4, 
125    .carouseller .car__3, 
126    .carouseller .car__2, 
127    .carouseller .car__1 { width: 4.8717948717948715%;} 
128
129/* Landscape phones and down */ 
130@media (max-width: 480px) { 
131    .carouseller .car__by5, 
132    .carouseller .car__12, 
133    .carouseller .car__6, 
134    .carouseller .car__4, 
135    .carouseller .car__3, 
136    .carouseller .car__2, 
137    .carouseller .car__1 { width: 10%;} 
138
139 
140 
141 
142.Product_details{ 
143	border: 1px solid #008cba47; 
144    box-shadow: 0 2px 4px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12)!important; 
145    margin: 10px 0px; 
146    border-radius: 5px; 
147
148.image { 
149      display: block; 
150    width: 100%; 
151    height: 225px; 
152    border-radius: 5px; 
153
154 
155.overlay1 { 
156    position: absolute; 
157    bottom: 0; 
158    left: 0; 
159    right: 0; 
160    height: 50px; 
161    /* width: 100%; */ 
162    opacity: 1; 
163    transition: .5s ease; 
164    background-color: rgba(0, 140, 186, 0.9); 
165    margin: 0px 0px 10px; 
166	border-bottom-left-radius: 5px; 
167    border-bottom-right-radius: 5px; 
168
169 
170.car__4:hover .overlay1 { 
171  opacity: 1; 
172
173 
174.text { 
175  width: 100%; 
176  color: white; 
177  font-size: 15px; 
178  position: absolute; 
179  top: 50%; 
180  left: 50%; 
181  -webkit-transform: translate(-50%, -50%); 
182  -ms-transform: translate(-50%, -50%); 
183  transform: translate(-50%, -50%); 
184  text-align: center; 
185
186    </style>