!!! Lisiting aus dem Artikel "Sozial integriert" !!! von Juergen Falkner, Oliver Hoess, Mohammed Shohrab Uddin und Anette Weisbecker !!! iX 7/2013, S. 146 @ü.li:Listing 1: Nutzung der XING API in Java unter Verwendung der Scribe-Library // Serverseitiger Java-Code // zur Übersicht ohne Rahmencode, Exceptions und Fehlerbehandlung // Konstanten // KEY 20 Zeichen private static final String APIKEY = "xxxxxxxxxxxxxxxxxxxx"; // SECRET 40 Zeichen private static final String APISECRET = "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"; // URL der aufzurufenden XING Funktion private static final String PROTECTED_RESOURCE_URL = "https://api.xing.com/v1/users/me"; // Callback URL (wird durch XING überprüft) private static final String CALLBACK ="http://showmycontacts.appspot.com/"; // Konfiguration des Scribe OAuth-Service Objekts (Method Chaining) OAuthService service = new ServiceBuilder() .provider(XingApi.class) .apiKey(APIKEY) .apiSecret(APISECRET) .callback(CALLBACK).build(); // Schritt 1: Request Token anfordern Token requestToken = service.getRequestToken(); // Autorisierungs-URL konstruieren String authURL = service.getAuthorizationUrl(requestToken); // Schritt 2: Nutzer im Client zur XING Autorisierungs-Seite weiterleiten // Erfolgt auf Client-Seite und ist hier nicht dargestellt // In GWT einfach mit Window.Location.assign(authURL); // Schritt 3: Nach erfolgter Autorisierung // Verifier clientseitig aus URL extrahieren (String v) und Access Token anfordern // Extraktion erfolgt auf Client-Seite und ist hier nicht dargestellt Verifier verifier = new Verifier(v); Token accessToken = service.getAccessToken(requestToken, verifier); // Schritt 4: Abfrage der geschützten Ressourcen // Hier: eigenes Profil OAuthRequest request = new OAuthRequest(Verb.GET, PROTECTED_RESOURCE_URL); service.signRequest(accessToken, request); Response response = request.send(); // Schritt 5: Verarbeitung der Informationen // Verarbeitung des komplexen JSON-Objects durch generierte Jackson-Objekte ObjectMapper mapper = new ObjectMapper(); jackson.Users users = mapper.readValue(response.getBody(),jackson.Users.class); // Zum Test Anzeigename ausgeben (Titel, Vorname, Nachname) System.out.println(users.getUsers().get(0).getDisplay_name());