【问题标题】:Liferay storing user email address in all lower caseLiferay 以全小写形式存储用户电子邮件地址
【发布时间】:2017-01-06 09:42:06
【问题描述】:

我在 liferay 中创建了一个用户,其电子邮件地址为“ABCD@domain.com”,但在 Liferay 数据库中的 USER_ 表中检查时,其存储为“abcd@domain.com”。我正在使用以下 API

UserLocalServiceUtil.addUser(creatorUserId,
                            companyId, autoPassword, password1, password2,
                            autoScreenName, screenName, usernameoremail, facebookId,
                            openId, Locale.ENGLISH, usernameoremail,
                            StringPool.BLANK, StringPool.BLANK, prefixId, suffixId,
                            male, birthdayMonth, birthdayDay, birthdayYear,
                            jobTitle, groupIds, organizationIds, roleIds,
                            userGroupIds, sendEmail, serviceContext);

在这一点上,我们确定电子邮件是我们发送的格式。

知道为什么会这样吗?我们可以使用 portal-ext 中的任何属性来按原样存储它吗?

【问题讨论】:

标签: java liferay liferay-6


【解决方案1】:

您为创建用户而提供的任何电子邮件地址都将在 UserLocalServiceImpl.addUserWithWorkflow() 中转换为小写。没有任何配置可以更改此行为。就个人而言,我在这里看不到小写的意义。

【讨论】:

    【解决方案2】:

    根据给定的帖子Are email address case sensitive,即使根据规范 RFC 5321,第 2.3.11 节:@ 之前的电子邮件地址的一部分应该是区分大小写的,但大多数人不这样处理邮件服务提供商的名称,因此 liferay 也以这种方式存储。您也可以参考this link 。 没有处理电子邮件大小写敏感性的属性。

    【讨论】:

      猜你喜欢
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      • 2019-04-28
      • 2015-10-01
      • 2017-05-22
      • 1970-01-01
      • 1970-01-01
      • 2016-06-11
      相关资源
      最近更新 更多