2016-11-11 2 views
0

에 주어진대로 AEM에 소셜 로그인을 구성했습니다. Geometrix-Outdoor 컴포넌트를 사용하여 로그인합니다. 페이지는 http://localhost:4502/content/geometrixx-outdoors/en.html입니다 [오른쪽 상단에 로그인했습니다].AEM 6.2에서 소셜 로그인을 통해 로그인 할 수 없습니다.

모든 구성이 좋습니다. 로그인을 클릭하면 페이스 북 로그인을위한 팝업이 나타납니다 (OAuth 로그인 성공). 콜백이 발생하면 OAuth Handler는 6.230에서 com/day/cq/personalization/ProfileUtil 클래스를 찾을 수 없습니다. 6.1에서는이 기능이 정상적으로 작동합니다. java.lang.NoClassDefFoundError가 : COM/일/CQ/개인/ProfileUtil com.adobe.cq.social.connect.oauth.impl.FacebookProviderImpl.getCurrentUser (FacebookProviderImpl.java에서 아래

로그입니다 : 368) com.adobe.granite.auth.oauth.impl.servlet.OAuthProfileImportServlet.requestAccessToken에서 com.adobe.granite.auth.oauth.impl.servlet.OAuthProfileImportServlet.updateUserDataAndRedirect (OAuthProfileImportServlet.java:130) (AT OAuthProfileImportServlet .java : 115) at com.adobe.granite.auth.oauth.impl.servlet.OAuthProfileImportServlet.doGet (OAuthProfileImportServlet.java:82) at org.apache.sling.api.servlets.SlingSafeMethodsSer vlet.mayService (SlingSafeMethodsServlet.java:269) org.apache.sling.api.servlets.SlingSafeMethodsServlet.service에서 org.apache.sling.api.servlets.SlingAllMethodsServlet.mayService (SlingAllMethodsServlet.java:140) 에서 (SlingSafeMethodsServlet. java : 345) at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service (SlingSafeMethodsServlet.java:376) at org.apache.sling.engine.impl.request.RequestData.service (RequestData.java:546) org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter에서 org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render (SlingComponentFilterChain.java:44) 에서 (AbstractSlingFilterChain.java:77)

루트 c를 식별하는 것이 도움이됩니다. 사용하고 교정하십시오. 감사합니다.

+0

https://docs.adobe.com/docs/en/aem/6-2/develop/ref/diff-previous/changes/pkg_com ... 오류 메시지가 더 명확 으면 좋겠어. day.cq.personalization.html - 클래스가 API에서 제거되었습니다. 그럼이 페이스 북 로그인 기능을 사용하는 다른 방법은 무엇입니까 – Santhosh

답변

0

AEM 6.2에서 com.day.cq.wcm.foundation.profile.ProfileUtil은 더 이상 사용되지 않습니다. 대신 com.day.cq.personalization.ProfileUtil을 사용하십시오.

0

소셜 로그인은 작성자 노드에서 사용할 수 없습니다. 커뮤니티 사용자를 작성하기 때.에 공개 노드에서만 유효합니다. 커뮤니티 사용자는 작성자 노드에 존재하지 않습니다.

나는

+0

하지만 AEM 6.1을 사용할 수 있습니다. 6.1과 6.2의 차이점은 무엇입니까? – Santhosh

+0

FacebookProviderImpl.getCurrentUser() 메소드는 AEM이 작성자 인스턴스인지 또는 게시 인스턴스인지에 따라 다른 코드 경로를 사용합니다. 게시 노드의 codepath는 com/day/cq/personalization/ProfileUtil 클래스를 사용하지 않습니다. 6.1에서는 클래스가 사용 가능했지만 6.2에서는 그렇지 않습니다. 6.1 명의 사용자가 복제되었으므로 사용자를 작성자로 게시합니다. 6.2 사용자는 이제 Sling Content Distribution을 사용하여 게시 노드간에 이동하고 작성자에게 절대 존재하지 않습니다. –

관련 문제