我正在使用Liferay 6.2 CE,我想为Application Display Template
创建一个非常简单的Asset Publisher
,它只显示一个没有任何额外元数据的图像。这样做的目的是允许页面管理员只需拖放现有文档(其中只包含一个图像)即可。填写页面上的整个列。
我的问题是我不知道如何访问此图片。
我想做这样的事情:
<#assign img=renderRequest.getImageUrl()>
<img url="{$img}" />
我使用freemarker列出所有属性
<#assign x=renderRequest.getAttributeNames()>
<#list x as item>
<br/>
${item}
</#list>
给了我结果:
LAST_PATH
FRIENDLY_URL
liferay-ui:success:message
javax.servlet.forward.context_path
RENDER_PORTLET_COLUMN_ID
PORTLET_AJAX_RENDER
com.liferay.portal.servlet.filters.gzip.GZipFilterSKIP_FILTER
THEME
javax.servlet.forward.servlet_path
javax.portlet.config
RENDER_PORTLET_COLUMN_POS
liferay-ui:error:rowBreak
org.apache.struts.action.MODULE
javax.portlet.response
COMPANY
javax.servlet.forward.query_string
bodyContent
javax.servlet.forward.path_info
com.liferay.portal.servlet.filters.i18n.I18nFilterSKIP_FILTER
User-Agent
view.jsp-results
INVOKER_FILTER_URI
liferay-ui:error:translateMessage
com.liferay.portal.kernel.util.CookieKeys
javax.servlet.include.context_path
dynamicAttributes
javax.portlet.lifecycle_phase
VIRTUAL_HOST_LAYOUT_SET
liferay-ui:success:key
scopedAttributes
javax.servlet.include.servlet_path
javax.servlet.forward.request_uri
COLOR_SCHEME
PORTLET_STRUTS_ACTION
liferay-ui:error:message
liferay-ui:success:translateMessage
LIFERAY_SHARED_SEARCH_CONTAINER_REFERENCE
LIFERAY_SHARED_THEME_DISPLAY
WINDOW_STATE
CURRENT_COMPLETE_URL
SERVLET_CONTEXT_INCLUDE_FILTER_STRICT
javax.servlet.include.request_uri
com.liferay.portal.servlet.filters.strip.StripFilterSKIP_FILTER
ACCEPT
LAYOUT
RENDER_PORTLET
USER_ID
org.apache.struts.taglib.tiles.CompContext
COMPANY_ID
USER
LAYOUTS
RENDER_PORTLET_COLUMN_COUNT
PORTLET_PARALLEL_RENDER
liferay-ui:error:key
PORTLET_ID
com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterSECURE_RESPONSE
javax.portlet.request
CURRENT_URL
CTX
org.apache.struts.action.mapping.instance
但是我仍然无法弄清楚哪个属性负责检索图像......或者还有其他方法可以实现这一目标吗?
答案 0 :(得分:3)
我对这种方法的看法是你需要新的Web内容结构和Web内容模板(而不是应用程序显示模板)。
仅使用一个图像字段创建新的Web内容结构:
创建新的Web内容模板:
ans关联结构和模板:
就绪