An error occurred while processing the template.
No error description was specified for this error; low-level message: java.lang.ClassNotFoundException: com.liferay.portlet.asset.model.AssetRenderer cannot be found by com.liferay.portal.template.freemarker_4.0.23

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign PortalAssetRenderer = staticU...  [in template "10157#10197#216897" at line 124, column 1]
----
1<style> 
2 
3.chevronUp:before { 
4    color: #3b3b3b; 
5    content: "\f077"; 
6    float: right; 
7    font-family: "fontawesome-alloy"; 
8    padding-left: 20px; 
9
10.chevronDown:before { 
11    color: #3b3b3b; 
12    float: right; 
13    content: "\f078"; 
14    font-family: "fontawesome-alloy"; 
15    padding-left: 20px; 
16
17 
18 
19.accordion-heading .accordion-toggle { 
20    padding: 8px 15px; 
21    font-size: 14px; 
22    font-weight: bold; 
23         
24
25 
26.accordion-group { 
27    border: 1px solid #e5e5e5; 
28    border-radius: 4px; 
29    margin-bottom: 2px; 
30
31 
32.accordion-inner { 
33    border-top: 1px solid #e5e5e5; 
34    padding: 9px 32px; 
35    background-color: #f1f1f1; 
36
37 
38.document-icon:before { 
39    border: 0 none; 
40    color: #bb2a33; 
41    content: ""; 
42    float: left; 
43    font-family: "fontawesome-alloy"; 
44    font-size: 18px; 
45    height: auto; 
46    margin-right: 10px; 
47    padding: 8px 5px 0; 
48    vertical-align: top;} 
49 
50.aui li { 
51    line-height: 25px; 
52
53 
54.documentTitle { 
55    color: #323232; 
56    font-size: 15px; 
57    font-weight: 400; 
58
59 
60 
61.documentDownloadLink { 
62    color: #323232; 
63    font-size: 12px; 
64    padding-left: 17px; 
65
66 
67.documentDownloadLink:before { 
68    content: "\f019"; 
69    font-family: "fontawesome-alloy"; 
70    padding-right: 5px; 
71
72 
73.documentVersion { 
74    color: #000; 
75    font-size: 12px; 
76
77 
78.documentVersion:before { 
79    content: "\f044"; 
80    font-family: "fontawesome-alloy"; 
81    padding-right: 5px; 
82
83 
84 
85.documentAuthor { 
86    color: #000; 
87    font-size: 12px; 
88
89 
90.documentAuthor:before { 
91    content: "\f183"; 
92    font-family: "fontawesome-alloy"; 
93    padding-right: 5px; 
94
95 
96.labelSeperator { 
97    color: #000; 
98    padding-left: 3px !important; 
99    padding-right: 3px; 
100    font-size: 12px; 
101
102 
103.documentView { 
104    float:right;  
105    padding-right:5px; 
106 
107
108 
109.documentView:before { 
110    content: "\f019"; 
111    font-family: "fontawesome-alloy"; 
112    padding-right: 5px; 
113
114 
115.documentRevisionAuthor { 
116    color: #000; 
117    font-size: 12px; 
118    margin-left: -7px; 
119
120 
121</style> 
122 
123<#assign liferay_ui = PortletJspTagLibs["/META-INF/liferay-ui.tld"] /> 
124<#assign PortalAssetRenderer = staticUtil["com.liferay.portlet.asset.model.AssetRenderer"] /> 
125<#assign DLAppLocalServiceUtil = staticUtil["com.liferay.portlet.documentlibrary.service.DLAppLocalServiceUtil"] /> 
126<#assign FileVersion = staticUtil["com.liferay.portal.kernel.repository.model.FileVersion"] /> 
127<#assign StringPool = staticUtil["com.liferay.portal.kernel.util.StringPool"] /> 
128<#assign HttpUtil = staticUtil["com.liferay.portal.kernel.util.HttpUtil"] /> 
129<#assign HtmlUtil = staticUtil["com.liferay.portal.kernel.util.HtmlUtil"] /> 
130 
131<#if entries?has_content> 
132    <#list entries as entry> 
133        <#assign assetRenderer = entry.getAssetRenderer() /> 
134        <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry) /> 
135        <#assign entryTitle = htmlUtil.escape(assetRenderer.getTitle(locale)) /> 
136        <#if assetLinkBehavior != "showFullContent"> 
137            <#assign viewURL = assetRenderer.getURLViewInContext(renderRequest, renderResponse, viewURL) /> 
138        </#if> 
139 
140        <#assign dlFileEntryId = assetRenderer.getClassPK() /> 
141        <#assign fileEntry = DLAppLocalServiceUtil.getFileEntry(dlFileEntryId)  /> 
142        <#assign fileVersion = fileEntry.getLatestFileVersion() /> 
143        <#assign versionNumber = fileVersion.getVersion() /> 
144        <#assign author = fileEntry.getUserName() /> 
145        <#assign latestAuthor = fileVersion.getStatusByUserName() /> 
146        <#assign description = fileEntry.getDescription() /> 
147        <#assign title = fileEntry.getTitle() /> 
148        <#assign downloadUrl = themeDisplay.getPortalURL() + themeDisplay.getPathContext() + "/documents/" + fileEntry.getGroupId() + StringPool.SLASH + fileEntry.getFolderId() + StringPool.SLASH + HttpUtil.encodeURL(HtmlUtil.unescape(fileEntry.getTitle())) + StringPool.SLASH + fileEntry.getUuid() + "?version=" + fileVersion.getVersion() /> 
149        <#assign modifiedDate = fileVersion.getModifiedDate()?date /> 
150         
151        <#--Create an accordian for the Documents--> 
152        <div class="lfr-meta-actions asset-actions"> 
153            <@getEditIcon /> 
154        </div> 
155        <div class="accordion" id="accordion">  
156            <div class="accordion-group" id="${entry.getEntryId()}">  
157                <div class="accordion-heading document-icon"> 
158                      <a class="accordion-toggle chevronDown" data-toggle="collapse" data-parent="#accordian" href="#ci_${entry.getEntryId()}"> 
159                            <span class="documentTitle">${entryTitle}</span> 
160                      </a> 
161                            <span class="documentDownloadLink"><a href="${downloadUrl}" download target="_blank">Download</a></span> 
162 
163                </div> 
164                <div id="ci_${entry.getEntryId()}" class="accordion-body collapse"> 
165                  <div class="accordion-inner"> 
166                        <span class="labelSeperator"></span> 
167                        <#assign dateFormat = "MMMMM dd, yyyy" /> 
168                        <span class="documentRevisionAuthor"><i>Last edited on ${modifiedDate}</i></span><br/> 
169                    <#if description?has_content> 
170                        <p>${description}<p> 
171                    <#else> 
172                        No description currently available 
173                    </#if> 
174                  </div> 
175                </div> 
176        </div> 
177    </div> 
178    </#list> 
179</#if> 
180<#macro getEditIcon> 
181    <#if assetRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
182        <#assign redirectURL = renderResponse.createRenderURL() /> 
183 
184        ${redirectURL.setParameter("struts_action", "/asset_publisher/add_asset_redirect")} 
185        ${redirectURL.setWindowState("pop_up")} 
186 
187        <#assign editPortletURL = assetRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)!"" /> 
188 
189        <#if validator.isNotNull(editPortletURL)> 
190            <#assign title = languageUtil.format(locale, "edit-x", entryTitle) /> 
191 
192            <@liferay_ui["icon"] 
193                image="edit" 
194                message=title 
195                url="javascript:Liferay.Util.openWindow({dialog: {width: 960}, id:'" + renderResponse.getNamespace() + "editAsset', title: '" + title + "', uri:'" + htmlUtil.escapeURL(editPortletURL.toString()) + "'});" 
196            /> 
197        </#if> 
198    </#if> 
199</#macro> 
200 
201<script> 
202   jQuery(document).ready(function(){ 
203      $('#accordion .accordion-toggle').click(function() { 
204          //$(this).next().toggle(); 
205          $(this).toggleClass('chevronUp chevronDown'); 
206          //return false; 
207      //}).next().hide(); 
208      }); 
209    }); 
210</script>