Facebook e Twitter 4J

Um amigo pediu um mamão para ajudá-lo na integração da sua aplicação com o Facebook e de bate-pronto sugeri o Facebook4J que é uma biblioteca que já oferece toda a logística pronta para trabalhar com a API do Facebook, sem envolver JSON, a princípio. Tive essa ideia porque estava desenvolvendo no Apache Camel e uns dos componentes que testei foi o camel-facebook que justamente trabalha com essa biblioteca.

Aproveitando a corrente marítima do momento, decidi estudar um pouco mais a fundo a biblioteca e também já inclui o Twitter4J na jogada, que é análogo ao Facebook4J. E usei como referência estes dois repositórios:
Para ficar mais condizente com o mercado fiz dois projetos, um com o VRaptor e outro com o Spring MVC. Antes de começar a testar, é necessário que tenhamos uma conta de desenvolvimento tanto no Facebook como no Twitter. Para o primeiro caso siga os passos:
  • Acesse o endereço: https://developers.facebook.com/apps/
  • Clique no botão Create a New App.
  • Preencha o campo Display Name (obrigatório) e escolha uma categoria. No meu caso selecionei utilities.
  • Após a criação, logo acima da opção Dashboard, clique na seta após o nome da sua aplicação e logo em seguida em Create Test App.
  • Altere o nome sugerido se achar necessário e depois clique em Create Test App novamente.
  • Clique na opção Settings e depois em App Platform. Selecione a opção Website.
  • No campo Site URL coloque como você acessará no seu servlet container, no meu caso ficou http://localhost:8080/facebook4j-twitter4j-spring/. Veja que coloquei o projeto do Spring, mas poderia ter usado o context root do VRaptor também.
  • Guarde o App ID e o App Secret. Usaremos ambos no projeto de teste!
Agora para o caso do Twitter:
  • Acesse o endereço: https://apps.twitter.com/
  • Clique no botão Create New App.
  • Preencha os campos Name, Description e Website. Como usaremos o recurso de callback, coloque a URL de acesso do projeto quando estiver rodando, coloquei novamente http://127.0.0.1:8080/facebook4j-twitter4j-spring/. Coloquei o endereço de loopback pois localhost não estava aceitando.
  • Aceite o DA e clique em Create Your Twitter application.
  • Clique na opção Keys and Access Tokens.
  • Guarde o Consumer Key e o Consumer Secret.
Os dois projetos de teste podem ser baixados nos links abaixo:
Como ambos os projetos estão prontos, só precisamos alterar os arquivos facebook4j.properties e twitter4j.properties em função das chaves que guardamos. Eles estão na source folder src/main/resources. No teste usei o Tomcat v8.0.20. Coloque o projeto para rodar e acesse o endereço do context root.


Veja que tem tanto o Twitter como o Facebook para testar. Ambos suportam a postagem de conteúdo.


Não expliquei o passo a passo da coisa no âmbito da programação, contudo acredito que fazendo os testes tudo ficará claro. Qualquer dúvida é só postar.

Testado com o Eclipse Luna SR2.

Comentários