在Liferay 7中覆盖登录jsp

时间:2017-02-06 15:38:57

标签: jsp java-ee liferay hook liferay-7

在Liferay 7中,我想覆盖登录jsp。

作为第一个测试,我尝试通过以下链接成功覆盖bottom-ext.jsp

https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/overriding-core-jsps

之后因为login.jsp不是Liferay 7中的核心jsp而是模块jsp,我尝试了以下链接:

https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/overriding-a-modules-jsps

但不幸的是,在尝试部署*并启动后,我的登录视图中没有任何变化,而我在login.jsp文件中添加了一些自定义html。

是否有人成功地遵循了上一个教程?

对于我的测试失败,我有:

  1. 首先检索示例项目
  2. https://github.com/liferay/liferay-blade-samples/tree/master/liferay-workspace/modules/blade.hook.jsp

    1. 接下来使用第18行和第20行之间的自定义html修改了login.jsp
    2. <p style="color: red">changed</p>
      <h1>Hello World</h1>
      <c:choose>

      1. Liferay模块项目似乎没有部署*因为在部署期间Eclipse控制台中没有写入任何内容。通常,对于我的其他项目模块,我有以下消息:
      2. 16:31:49,741 INFO [pool-8-thread-2] [BundleStartStopLogger:35] STARTED project.module_name_1.0.0 [864]

        但不是在这种情况下......

1 个答案:

答案 0 :(得分:1)

钩子总是在liferay 7中保持解析状态, 此外,当您部署该挂钩时,日志上似乎没有任何内容,似乎表明您的登录portlet版本不同。

在gogo shell&amp;中查看您的版本在bnd.bnd

中替换它
Fragment-Host: com.liferay.login.web;bundle-version="1.0.0"

当你部署它时,一条消息应该像停止和放弃一样。开始登录.web, 这就是JSP Fragments钩子的工作原理。

最新的Liferay IDE 3.1.0(12月发行版)提供了创建JSP片段钩子的选项,如果您通过BLADE CLI遇到问题,请尝试使用。