Utiliser les apis facebook a travers swing

Soyez le premier à donner votre avis sur cette source.

Vue 14 112 fois - Téléchargée 1 199 fois

Description

Voici une application (en cours d'évolution) qui permet de manipuler facebook a travers l'api développé par la communauté http://code.google.com/p/facebook-java-api/

Source / Exemple :


- utilisation de commonHttpClient pour l'authentification
 - utilisation de xSwing pour l'interface graphique
 - Utilisation des swingworker pour les thread
 - Barre de notification dans la barre des taches
 - Outil pour exporter les albums photos
 - Outil pour verifier les personnes qui suppriment l'utilisateur de sa liste
 - Gestion des photos avec effet de reflet, zoom et deplacement.
 - Utilisation du JDesktop pane pour gerer les chat.
 - moteur de recherche
 - Look & feels changeable

le tout structurer sur un modele MVC avec séparation des couches métier, DAO, etc....

Conclusion :


Enjoy :)

la version subversion se trouve ici : http://code.google.com/p/facebookboard/

je peux malheureusement pas tout mettre sur javafr par manque de place j'ai donc supprimer le contenu du répertoire lib, mais vous pouvez les récupérer sur googlecode.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
jeudi 16 juin 2011
Statut
Membre
Dernière intervention
16 juin 2011

aRafat peux tu publier le projet en neatbeans avec tous les jar necessaires car j'ai besoin de connecté sur facebook et calculer le temps de login.
j'ai trouvé des erreurs des jar et je n'ai pas trouvé la solution.
merci
Messages postés
13
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
22 décembre 2010

ça marche, il ma fallut de commenter la ligne numéro 498 de la classe <FacebookSwingWindow.java> contenant le code suivant :
//temp.append("").append(loggedUser.getStatus().getMessage()).append(" )
");

puis de commenter aussi la ligne numéro 202 de la classe <JXInfoPanel.java> contenant le code suivant :
//professionnalEditorPan.setText(getHtmlWorkInfo());

Et ce qu'il s'agit d'un bug ?

l'application s'est lancée, elle m'a charger ma liste d'amis avec l'erreur suivante :
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.ArrayList.get(ArrayList.java:324)
at org.jdesktop.swingx.decorator.PatternFilter.mapTowardModel(PatternFilter.java:180)
at org.jdesktop.swingx.decorator.Filter.convertRowIndexToModel(Filter.java:116)
at org.jdesktop.swingx.decorator.FilterPipeline.convertRowIndexToModel(FilterPipeline.java:430)
at org.jdesktop.swingx.JXTable.convertRowIndexToModel(JXTable.java:1360)
at org.jdesktop.swingx.JXTable.getValueAt(JXTable.java:1381)
at org.pihen.facebook.ui.FacebookSwingWindow$3.mouseClicked(FacebookSwingWindow.java:241)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)
at java.awt.Component.processMouseEvent(Component.java:6270)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6032)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4247)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Je suis très motivé, et je veux joindre le développement de cette super application, je t'invite à jeter un coup d'oeil sur mon blog : hhtp://attractive-java.blogspot.com.

Merci sur ton temps !!
Messages postés
13
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
22 décembre 2010

J'ai ré-exécuté l'application une deuxième fois, mais le problème persiste encore, me donnant :

run:
22/12/2010 15:18:42 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:62) - Connexion en cours
22/12/2010 15:18:46 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:65) - token=3ab3754f77f9d505e0c9f39e791d6527
22/12/2010 15:19:14 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:90) - Session key is 2.llJM5tbKV6_efEbzFxC8_A__.3600.1293037200-1439241295
22/12/2010 15:19:14 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:93) - Connexion en cours : true
java.lang.NullPointerException
at org.pihen.facebook.ui.FacebookSwingWindow.getHtmlBeanPresentation(FacebookSwingWindow.java:498)
at org.pihen.facebook.ui.FacebookSwingWindow.(FacebookSwingWindow.java:167)
at org.pihen.facebook.ui.FacebookSwingWindow.getInstance(FacebookSwingWindow.java:89)
at org.pihen.facebook.main.Launcher$1.run(Launcher.java:16)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Alors où ets le problème à ton avis ???
Messages postés
13
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
22 décembre 2010

J'ai fait exactement ce que tu ma demander de faire, et en exécutant l'application il me donne dans netBeans) :

run:
22/12/2010 15:06:46 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:100) - Connexion a faceboook
22/12/2010 15:06:46 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:103) - Pas encore connecte, connexion en cours
22/12/2010 15:06:46 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:106) - initialisation du client
22/12/2010 15:06:50 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:109) - Token OK d7593f84eb07a5b13b03b31b5a64d46d
22/12/2010 15:06:50 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:110) - Lancement du browser
22/12/2010 15:08:17 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:113) - Browser ferme
22/12/2010 15:08:27 DEBUG [AWT-EventQueue-0] (FacebookJaxBDaoImpl.java:118) - Initialisation du client terminé secret=2ed38bc9d028dfbbbb61fc7f0d659ccc session=2.dfqC8BGK8SESw6bAyUn_9Q__.3600.1293037200-1439241295
java.lang.NullPointerException
at org.pihen.facebook.ui.FacebookSwingWindow.getHtmlBeanPresentation(FacebookSwingWindow.java:498)
at org.pihen.facebook.ui.FacebookSwingWindow.(FacebookSwingWindow.java:167)
at org.pihen.facebook.ui.FacebookSwingWindow.getInstance(FacebookSwingWindow.java:89)
at org.pihen.facebook.main.Launcher$1.run(Launcher.java:16)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

En regardant le code source, il souligne la ligne suivant :
temp.append("").append(loggedUser.getStatus().getMessage()).append(" )
");
dans la méthode : private String getHtmlBeanPresentation(User loggedUser) de la classe ::
public class FacebookSwingWindow extends JXFrame!!! avez vous des idéées sur ce problème ??

Est ce que si Facebook est déjà ouvert par le Browser, ne sera pas accessible depuis l'application ?
Messages postés
25
Date d'inscription
dimanche 29 décembre 2002
Statut
Membre
Dernière intervention
22 décembre 2010

une fois que tu as récupéré toutes les dernieres sources et jar sur le serveur google.

tu importe ton projet dans netbeans, tu compiles le tout.

tu vérifies dans le fichier conf/settings.conf
browser=C\:\\Program Files\\Internet Explorer\\iexplore.exe
first_connect=1

le premier lancement de l'appli va lancer le navigateur. Tu saisi tes informations de connexion, et tu dois accepter d'utiliser l'application dans ton profil.

Tu ferme le navigateur et l'application se lance.

quand tu relancera l'application, tu n'aura plus besoin du navigateur, ça se fera par une fenêtre swing.
Afficher les 26 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.