如何扩展Liferay';s 6.1服务生成器?

如何扩展Liferay';s 6.1服务生成器?,liferay,liferay-6,Liferay,Liferay 6,我想用定制功能扩展Liferay的服务生成器,比如从特定XSD生成portlet和持久层 我搜索了网络和liferay的来源,但是我找不到一个clou从哪里开始,来源在哪里。是否有关于服务生成器内部结构的文档 注意:我不会问“如何使用ServiceBuilder”。如果您直接修改ServiceBuilder,请做好升级噩梦的准备-毕竟,它是一个代码生成器,Liferay很可能也会在未来的版本中更改它 一般来说,“所有”它所做的就是处理一些模板文件——这些是velocity或freemarker模

我想用定制功能扩展Liferay的服务生成器,比如从特定XSD生成portlet和持久层

我搜索了网络和liferay的来源,但是我找不到一个clou从哪里开始,来源在哪里。是否有关于服务生成器内部结构的文档


注意:我不会问“如何使用ServiceBuilder”。

如果您直接修改ServiceBuilder,请做好升级噩梦的准备-毕竟,它是一个代码生成器,Liferay很可能也会在未来的版本中更改它

一般来说,“所有”它所做的就是处理一些模板文件——这些是velocity或freemarker模板(不记得了),您可以在门户源代码中找到它们。(是的,我知道这很简单,模板也不是那么简单)

如果您想生成与数据库结构和经典CRUD功能相匹配的portlet UI,请查看-他们已经解决了这个问题,并且他们从一个类似于servicebuilder的结构开始,但是从他们的解决方案生成甚至service.xml,这样他们就可以更好地与Liferay未来的更改分离


很好的副作用,他们可能已经做了你想做的事情(或者你可以贡献你的附加功能)

嘿。。创建持久性类和模型类的代码似乎在java文件
liferay-portal-src-6.1.20-ee-ga2\portal impl\src\com\liferay\portal\tools\servicebuilder\servicebuilder.java
HTHHi中,是的,这是一个很好的起点。但是生成的portlet不起作用。我得到错误“对于servlet上下文示例,BeanLocator为null”。我在论坛网站上发布了这个错误,但似乎没有人有这个问题