我使用 hook maven 原型(prototype)创建了一个 liferay Hook 插件,并覆盖了 /html/common/themes/top_js-ext.jspf
。在 jsp 中,我需要使用自定义功能,我在一个单独的 jar 中。该 jar 是通过 Maven 依赖项包含的,并且该项目编译得很好,但是当我运行 jsp 时,门户找不到导入的类。
我该如何解决这个问题?我应该手动将自定义 jar 包含在 liferay 的 lib 目录中吗?
如果我理解正确的话,JSP 是在 Hook 插件上下文之外执行的,因此自定义类不可用。有没有一种方法可以使用 maven 构建插件,以便门户找到我的自定义 jar,而无需手动将它们移动到门户的类路径?
最佳答案
有多种选项可以使您的自定义 jar 可用于运行时。首先,您可以考虑将它们放入您的 plugin's WEB-INF/lib directory 中:
[..] put the JAR file in the WEB-INF/lib folder of your custom-jsps folder [..]
另一种方法是 create an ext plugin并将您的 jar 文件放入 ext-lib/portal 或 ext-lib/global 目录中。一旦deployment of the ext-plugin完成后,它们将分别可供所有 tomcat 的 web 应用程序(在 ext-lib/global 的情况下)或门户(以 tomcat/webapps/ROOT 形式提供)使用。
关于java - 在liferay hook中将自定义类导入到JSP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15923394/