我想在我的网站上进行 LinkedIn 身份验证。他们的 API 返回所需的信息,创建帐户功能正在运行。但是,当我尝试登录该网站时,我似乎遇到了一些问题。
UserEmailAddressException
当我调用该LoginUtil.login
方法时,我似乎得到了一个。
at com.liferay.portal.service.impl.UserLocalServiceImpl.authenticate(UserLocalServiceImpl.java:2480)
.
它失败了
if (authType.equals(CompanyConstants.AUTH_TYPE_EA)) {
if (!Validator.isEmailAddress(login)) {
throw new UserEmailAddressException();
}
}
这是我的代码:
boolean rememberMe = true;
String authType = CompanyConstants.AUTH_TYPE_EA;
try {
LoginUtil.login(request, response,
String.valueOf(user.getUserId()), user.getPassword(), rememberMe, authType);
}
catch (UserEmailAddressException ueae) {
ueae.printStackTrace();
}
用户通过电子邮件地址进行身份验证,所以我猜这应该是正确的身份验证类型?
我已经添加company.security.auth.type=emailAddress
了portal-ext.properties,但我得到了与没有此设置相同的错误。
由于 Liferay 文档不令人满意,我想知道如何正确调用该login()
函数,以便我的用户可以使用其 LinkedIn 帐户登录。