웹 응용 프로그램에서 fconnect를 통해 사용자가 로그인 할 때 FB를 웹 응용 프로그램에 통합했습니다. 그는 우리의 시스템 (만 1 시간) 우리의 시스템
자바 [GWT2.0]에서 개발우리의 웹 응용 프로그램입니다.
을 자신의 이메일 id.For 일반 사용자 소수의 사용자 등록을위한 전/P를 제공하는 등록웹 응용 프로그램에서 FACEBOOK 또는 일반 사용자가 FB를 통해 로그인하는 경우 (한 번에 1 개)
사용자 r 메시지 efreshes 페이지는 FB 팝업 창 Occues
"디버그 : 예외 동안로드 FB.apiClient 형식 오류 : wnd.FB.Facebook은 정의되지 $"
또는 때때로 $ wnd.FB.Facebook.apiClient null occures
위의 오류 [팝업] 메시지가 3 번 울립니다.
우리는 HTML 페이지에 < 스크립트 유형 = "텍스트/자바 스크립트"언어를 다음 스크립트를 사용 = "자바 스크립트" SRC = "http://static.ak.connect.facebook.com/js/api_lib/v0. 4/FeatureLoader.js.php ">사용자 정보를 표시하는 웹 응용 프로그램 즉, UserHome 페이지의 단 한 페이지에만. 유일한 오류 메시지가 위의 해당 페이지에 우리는 컨트롤러 클래스에서 [Gwittit에서] GWT 코드 [싱글 톤 클래스를] 다음 사용
발생
/** * Function get called when all the data on first page get loaded. * * */ public void notifyFinishedLoadinPage() { FacebookConnect.waitUntilStatusReady(new RenderAppWhenReadyCallback());
}
private MyLoginCallback loginCallback = new MyLoginCallback();
class MyLoginCallback implements LoginCallback { public void onLogin() { isFacebookSign = true; fbLoggedInUserId = ApiFactory.getInstance().getLoggedInUser(); for (FacebookObserver Observer : facebookObservers) { Observer.notifyFacebookLogin(true); } } } public void publishStream(final FacebookObserver fbObserver) { FacebookConnect.init(FacebookConstants.FACEBOOK_API_KEY,
"xd_receiver.htm", loginCallback);
FacebookConnect.requireSession(new
AsyncCallback() {
public void onFailure(Throwable caught) { Window.alert("Require session failed: " + caught); GWT.log("Require session failed: " + caught, null); } public void onSuccess(Boolean isLoggedIn) { if (isLoggedIn) { for (FacebookObserver Observer :
facebookObservers) { Observer.notifyPublishStream(); } } } });
} public void facebookConnection() { FacebookConnect.init(FacebookConstants.FACEBOOK_API_KEY,
"xd_receiver.htm", loginCallback); //SERVER FacebookConnect.requireSession(new AsyncCallback() {
public void onFailure(Throwable caught) { GWT.log("Require session failed: " + caught, null); } public void onSuccess(Boolean isLoggedIn) { if (loginCallback != null && isLoggedIn) { loginCallback.onLogin(); } else { //User not logged in } } }); } /** * Fired when we know users status */ private class RenderAppWhenReadyCallback implements
AsyncCallback {
public RenderAppWhenReadyCallback() { FacebookConnect.init(FacebookConstants.FACEBOOK_API_KEY,
"xd_receiver.htm", loginCallback); //SERVER }
public void onFailure(Throwable caught) { Window.alert("Unable to login through Facebook: " + caught); } public void onSuccess(ConnectState result) { if (result == ConnectState.connected) { isFacebookSign = true; for (FacebookObserver Observer : facebookObservers) { Observer.notifyFacebookLogin(true); } //History.newItem(HistoryConstants.USERHOME_PAGE_HISTORY_TOKEN); } else { //rightSideFlexTable.clearCell(0, 0); //rightSideFlexTable.setWidget(0, 0,
facebookPanel); isFacebookSign = false;
} } };
이제 우리는이 문제에 발견 해결 할 수 없습니다.
는 하나 우리는이 문제를 해결하는 데 도움이 될 수 있습니다 최대한 빨리희망-에 대한 우리가 위의 질문에 대한 해결책을 발견 최고의 협력
문제에 대한 자세한 정보를 제공 할 수 있습니까? GWT의 일반 JS Facebook 라이브러리를 사용하려고합니까? 그렇다면 어느 것이고 코드는 어떻게 생겼는가? –
@ jason Hall 우리는 HTML 페이지에서 다음 스크립트를 사용했습니다.