問題
- Liferay と LDAP サーバー間の同期中に、ログに
UserEmailAddressException$MustNotBeDuplicate
エラーが繰り返し記録されます。 - 各同期反復で、ログに次のようなエラーが登録されます。
com.liferay.portal.kernel.exception.UserEmailAddressException$MustNotBeDuplicate: User XXXXXX cannot be created because a user with company YYYYYYYYYY@domain.com and email address XXXXXX is already in use
- エラーには、問題のあるユーザーとその電子メール アドレスが表示されます。
Environment
- Liferay DXP 7.0+
解決策
- 属性 ScreenName および EmailAddress の値は、Liferay インスタンス内で一意でなければなりません。
- 同期 LDAP プロセス:
- 同期反復で新しいユーザーが検出されると、そのユーザーは LDAP から Liferay にインポートされます。
- この時点で、ユーザー属性が検証されます。
- この検証プロセスでは、新しいユーザーの ScreenName と Email が他の既存のユーザーに存在しないことが確認されます。 これが発生すると、MustNotBeDuplicate 例外がスローされます。
- これは、ユーザーをインポートする際の主なエラー原因の 1 つです。
- この種の失敗がある場合は、問題のあるユーザーの属性を確認し、これらの属性の競合を解決してインポートできるようにする必要があります。