我开始制作JSP表单Portlet,但我有2个疑问。

1)
我已经制作了一个结构和相应的模板,并以此创建了多个Web内容。
现在,我正在创建一个JSP Portlet以显示Web内容,并使用JournalArticleLocalServiceUtil.getStructureArticles()获取所有内容,但是每当我添加更多内容时,它会自动显示在Live and Staging中,而不是仅显示在Staging中。
我怎样才能解决这个问题?

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

谢谢。

最佳答案

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

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

07-26 02:57