我正在尝试liferay 7.1 b3我想在页面片段中嵌入一个 portlet。我查看了最新的可用文档 here ,它表示为了将 portlet 小部件嵌入到页面片段中,我所要做的就是添加
"com.liferay.fragment.entry.processor.portlet.alias=my-custom-portlet"
@Component
中的属性属性,在本例中,别名 ( my-custom-portlet
) 是我将用来在片段中包含 portlet 的别名。
然后在我的自定义页面片段中我必须包含 lfr-widget
带有 com.liferay.fragment.entry.processor.portlet.alias
定义的后缀的标签属性(property)。所以就我而言,它应该是 <lfr-widget-my-custom-portlet />
.
问题是我什至无法用上面的内容创建页面片段。我收到以下错误:
There is no widget available for alias my-custom-portlet.
另一方面,如果我使用 liferay portlet(例如他们自己的示例中的 <lfr-widget-nav/>
)进行尝试,则导航 portlet 会正确显示。还有其他人尝试过吗?如有任何反馈,我们将不胜感激。
最佳答案
我遇到了完全相同的问题,我的解决方案是避免 portlet 名称中出现破折号!我花了很长时间才弄清楚,所以我想如果有人遇到同样的问题并遇到这篇文章,我会将其发布在这里。
因此,不要使用 "javax.portlet.name=my-custom-portlet"
编写 "javax.portlet.name=myCustomPortlet"
。
Fragment 属性仍可以包含任何破折号:"com.liferay.fragment.entry.processor.portlet.alias=my-custom-portlet"
关于java - liferay 7.1 b3 在片段中嵌入 portlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50910853/