java - 如何区分 JSP portlet 上的暂存和实时?

标签 java jsp liferay portlet

我开始制作 JSP 表单 portlet,但有两个疑问。

1) 我制作了一个结构和相应的模板,并用它创建了几个网页内容。 现在我正在创建一个 JSP portlet 来显示 Web 内容,我使用 JournalArticleLocalServiceUtil.getStructureArticles() 获取所有内容,但每当我添加更多内容时,它都会自动出现在 Live 和 Staging 中而不仅仅是出现在舞台上。 我该如何解决这个问题?

2) Liferay 是否会自动清理所有输入以防止 SQL 注入(inject)和 XSS 攻击?

谢谢。

最佳答案

1) 如果您始终使用相同的 groupId,您将始终获得相同的内容:实时站点和登台站点具有不同的组 ID。您通常会使用“当前”groupId,这意味着在暂存时使用暂存组,在实时时使用实时组 ID。

2) Servicebuilder 通常不会受到 SQL 注入(inject)的影响,除非您手动构建 SQL 查询。由于脚本内容有一些合法用途,因此您必须自己确定转义用户生成内容的级别,Liferay 为 HtmlUtil 类提供了各种转义方法。选择您需要的。对于一般用途,例如要清理 WebContent、博客等,您可能需要从 Liferay 的 Marketplace 部署 AntiSamy 插件

关于java - 如何区分 JSP portlet 上的暂存和实时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20036461/

相关文章:

java - 如何在所有 'workers' 上安排 quartz 作业?

java - 如何在网页上录制音频并存储在数据库中

mysql - Liferay 6.2 服务构建器中的参照完整性

java - 从数组传递 o 对象中的参数

java 。连接字符串。微基准

java - 如何在不编写已经很简单的方法的情况下简化类?

mysql - 用于从数据库检索信息的完整日历建议

java - 在 JSP 中将日期类型转换为字符串

java - 如何为不属于该组织的用户授予角色组织管理权限?

liferay - 如何在单个插件中拥有多个service.xml