2017-09-22 55 views
0

我想在Liferay中覆盖我的概要文件portlet,我读到可以用钩子来完成,但找不到原始的.jsp。在liferay 7.0中覆盖我的概要文件portlet ga3

及文档中:https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/overriding-a-modules-jsps 他们提Fragment-Host

片段-主机:com.liferay.login.web;捆绑版本= “[1.0.0,1.0.1)”

但有人知道哪个是我的个人资料的片段主机? 并且我可以在其中找到.jsp的原始代码?

回答

2

当您将portlet添加到页面时,请转到“外观和感觉”/“高级CSS”,并查看此Portlet在那里记录的Portlet ID。它看起来像portlet_com_liferay_contacts_web_portlet_ProfilePortlet_INSTANCE_KXj9dBbRgJFs。这给了你一个提示portlet被实现的位置的提示,这会给你足够的提示来定位你想要定制的portlet。

Liferay的编码标准通常会明确定义portlet id,因此grep com_liferay_contacts_web_portlet_ProfilePortlet的源代码,然后使用此常量应该很容易找到实现。 (注意:这并不是说我没有给你答案,因为我不想这样做,而是因为我目前没有下载7.0 GA3源代码)

在相关说明中:钩子是在Liferay的核心中重写一个JSP的“旧”方式可以达到6.2 - 你不应该在Liferay 7中再使用它,特别是现在很多JSP都在插件中,所以钩子不能抓住它们。 JSP碎片的方法是正确的。您需要解决您在Liferay中找到的确切版本 - 在有关如何构建碎片的文档中应详细记录这些版本。

+0

好的,谢谢Olaf,我明白你的观点,但是当你打开默认页面时,我没有任何portlet,你可以添加一些portlet,但是我看到这是一个单独的站点,你知道怎么可以我为每个人设置了一组默认的portlet或内容? –

+0

我在源代码中冲浪,我看到你提到的要点,我会找到我的个人资料的portlet谢谢 –