java - JSR-286 portlet 是否需要在其 WAR 文件中包含 web.xml 文件?

标签 java liferay portlet web.xml jsr296

JSR 286 规范是否要求在包含 portlet 的 WAR 中存在 web.xml 文件?起初,我是这么认为的,但后来我创建了一个没有 web.xml 的 portlet,将其部署在 Liferay 中,并且它完美地工作了。那么它是Liferay的扩展(或bug),还是不需要有这样的文件?

最佳答案

正如 Olaf 所说,portlet 只不过是一个 Web 应用程序。 Liferay 有一个监听器,当 portlet 自动部署时会触发该监听器。它引发了 war 并添加了 web.xml 和必要的内容。如果有源码的话可以检查一下逻辑。类名称为 PortletDeployer,方法为 getServletContent。添加 web.xml 并填充它之后,他们只需使用 FileUtil.touch 触摸它即可。

关于java - JSR-286 portlet 是否需要在其 WAR 文件中包含 web.xml 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8749818/

相关文章:

java - 使用 Drools 的专家系统

plugins - 我可以使用 Liferay 6.1.0 中的 Kaleo 和其他 portlet吗?在6.1.1版本中?

java - 同时线程运行

Java RegEx 以任何形式组合模式

java - 线程方法未运行?

liferay - liferay 7 中 liferay-portlet.xml 的等效文件是什么?

templates - 在 Velocity 模板中读取 cookie

java - 在 liferay 门户中如何将多 session 限制为基本 session 模式?

java - Liferay : how can i upload a image from portlet preferences?

java - 如何实现 JSR 规范