2016-07-22 62 views
0

我正在使用Liferay 7和OSGi模块对应用程序进行编码。我需要创建一个跨所有模块(portlet)可用的自定义taglib,但我从不知道从哪里开始。在Liferay 7中创建自定义taglib

你有什么想法吗?

我应该将标记库定义,类和JSP存储在OSGi模块中吗?如果不是,在哪里,以及如何从portlet模块中引用它?

非常感谢您

回答

4

在大多数情况下,你应该能够在OSGi模块中完全提供一个标签库。你可以找到Liferay的源代码几个例子做到这一点,如下列:

https://github.com/liferay/liferay-portal/tree/master/modules/apps/foundation/map/map-taglib

正如你在这个例子看,你可以声明,该模块将通过提供 - 出口的taglib bnd.bnd文件中的能力:

Provide-Capability: osgi.extender;osgi.extender="jsp.taglib";uri="http://liferay.com/tld/map";version:Version="${Bundle-Version}" 
+0

此机制是否可以覆盖核心taglib类? – asotog