2014-10-10 4 views
0

내 jsf 애플리케이션에서 Facebook을 통해 로그인하려면 socialauth를 사용하고 있습니다. 그것은 잘 작동합니다. jsf commandlink의 작업 방법을 클릭하면 페이스 북에 연결합니다.socialauth를 사용하여 facebook oauth 페이지를 팝업 창으로 여는 방법

<p:commandLink id="facebook" ajax="false" value="Login with facebook" 
           action="#{userSession.socialConnect}"> 
           <f:setPropertyActionListener target="#userSession.providerID}" 
            value="facebook" /> 
          </p:commandLink> 

이가 잘 작동되지만, index.xhtml 페이지에서

public void socialConnect(){ 
    SocialAuthConfig config = SocialAuthConfig.getDefault(); 
       config.load(new FileInputStream(new File("auth.properties"))); 
    SocialAuthManager manager = new SocialAuthManager(); 
       manager.setSocialAuthConfig(config); 
    String authenticationURL = manager.getAuthenticationUrl(providerID, 
         "http://mudomain.com/page"); 
    FacesContext.getCurrentInstance().getExternalContext() 
         .redirect(authenticationURL); 
} 

아래처럼 같은 창에서의 OAuth 페이지 오프닝. 새 창에서 페이스 북 페이지를 열어야합니까? 사용할 수있는 구성이 있습니까? 어떤 도움을 주시면 감사하겠습니다.

편집 : 내가 사용하는 경우

<h:commandLink target="_blank" id="facebook" ajax="false" value="Login with facebook" 
            action="#{userSession.socialConnect}"> 
            <f:setPropertyActionListener target="#userSession.providerID}" 
             value="facebook" /> 
           </h:commandLink> 

새 탭에서 위의 코드 페이스 북 loginpage 개방하지만 난 창을 닫고 내 페이지로 redired 할 필요가 로그인 후. 어떤 도움을 주시면 감사하겠습니다.

답변

0

<p:commandLink/>은 바닐라 HTML 하이퍼 링크를 나타내며, 이는 target 특성을 가짐을 의미합니다. 정기적 HTML 하이퍼 링크를하는 것처럼 _blank에 그 설정

<p:commandLink target="_blank" id="facebook" ajax="false" value="Login with facebook" action="#{userSession.socialConnect}"> 
     <f:setPropertyActionListener target="#userSession.providerID}" value="facebook" /> 

</p:commandLink> 
같은 탭
+0

: CommandLink는 사용 시간 : 그 작업을 CommandLink는하지만 난 후 새 창을 닫아야합니다 페이 스북에 로그인하고 페이지로 돌아갑니다. – Ramakrishna

+0

에서의 작동하지 않는, 아직 페이스 북 페이지 개방 페이지의 insted – Ramakrishna

+0

그건 다른 질문입니다 @Ramakrishna – kolossus

관련 문제