Question

Tout d'abord, je veux donner un grand merci aux ingénieurs de l'API Google GData pour leur bon travail et je voudrais mentionner que cette question ne vise pas à quoi que ce soit critique. Il pointant simplement des choses.

Quelqu'un pourrait expliquer que s'il vous plaît me? Pour autant que je peux voir, les développeurs de la bibliothèque client api google java réinventent la roue. Il est comme écrire un nouveau JDK pour un projet Java, parce que client Abdère ne ce que Google bibliothèque client api fait et fonctionnalités du serveur Abdère et adaptateurs peuvent aussi être utilisés pour beaucoup de choses, comme la persistance d'entrée et bien d'autres.

Je suis conscient du fait que le protocole de données de Google est un peu l'édition atomique spécifique, mais si on a besoin d'utiliser une partie des extensions de fantaisie et des fonctionnalités qui offre du projet Apache Abdera pour ce protocole, il est préférable de ne pas utiliser Google bibliothèque client api et mettre en œuvre le client à partir de zéro avec Abdera ... et je suis sûr que, dans beaucoup de cas, ses fonctions, comme l'adaptateur RJC de Abdera deviendrait très pratique pour docs google, google trousse à outils de traduction et pratiquement pour la plupart des autres .

Maintenant, il est grand qu'il ya une bibliothèque client api google à utiliser pour docs google, mais qu'est-ce que je vais faire avec les documents et les réponses d'alimentation atomique? Je crois que, dans plus de la moitié des cas il y a aussi un dépôt ou la base de données de l'autre côté. Et dans ce cas, Abdère est nécessaire, non pas les simples clients api google qui ne sont TRIAGE / unmarshalling les flux ...

En fait, il y a quelque chose à persister dans toutes les API de Google. Il serait logique, si Google a décidé d'investir l'effort dans l'amélioration ou l'intégration Abdera ... Cela ne veut pas ... surtout si on considère un fait très connu dans le développement de logiciels, ce deuxième version est généralement réécrite à partir de zéro. Apache Abdère est un projet mature avec 5 ans de son existence, utilisé par des tonnes d'applications.

S'il y a des raisons, que je ne vois pas le client et la mise en œuvre avec l'utilisation de l'analyseur de traction n'était vraiment nécessaire, j'utiliser au moins un analyseur de traction xml qui n'est pas dépréciée. Xmlpull.org est de 6 ans, mais inactif et il n'implémente même pas StAX api. stax.codehaus.org mise en œuvre de référence, la mise en œuvre par défaut JRE Stax, la mise en œuvre Apache Axiom et la mise en œuvre principalement woodstox.codehaus.org serait bien mieux, pourquoi éviter les spécifications et les projets en cours avec le soutien et la communauté?

Mes excuses aux développeurs de bibliothèque client google api java pour cette critique, mais je aime vraiment apis Google, mais travailler avec la première version de ce client était vraiment une expérience amère, la version actuelle est agréable. Mais beaucoup de temps a été gaspillé en fait principalement en raison de Réinventer la roue et les changements extrêmes entre la libération de la version 0 via gdata-java-client google-api-client-java.

Enfin, Google rend les API restreintes après que les gens investissent temps et argent en elle, alors pourquoi les soins, non? : -)

Je reprends ce que je disais, le logiciel et le protocole beaucoup changé depuis ... Maintenant, quand GData soutient JSON et il ne serait pas même logique de l'utiliser!

Était-ce utile?

La solution

J'ai eu le même problème. Vous pouvez vous inspirer de projet google-feedserver . Il utilise l'ancienne version gdata de la bibliothèque client Google, mais les offres de projet avec combinaison avec Apache Abdère. Ils font la base de données via la persistance ibatis.

Cependant, ce que je faisais: j'ai passé 2 jours à apprendre et mettre en œuvre mon application client avec bibliothèque client google api espérant que le développement de la bibliothèque se poursuivra et de nouvelles fonctionnalités seront ajoutées. Mais malheureusement, il est à peu près la même chose pour longtemps. Alors j'ai récemment utilisé le client Abdera et j'ai créé quelques extensions org.apache.abdera.examples.extension.* pour les données de google api et moi entièrement Abdère. Si vous pensez à ce sujet, il n'y a pas besoin d'utiliser la bibliothèque client api google. Vous avez juste besoin de mettre en place en-tête d'autorisation

clientLogin.authenticate().setAuthorizationHeader(Util.getTransport());

Quant à savoir pourquoi Google n'utilise pas le cadre Abdère, je me pose la même question. Il est l'un des problèmes du monde Java. Déchets sur de nombreux endroits. Abdera cadre est un projet vraiment agréable et avec tout le respect dû à Google, s'ils ont décidé de créer sa propre bibliothèque de client ils devraient le faire plus puissant. (C'est mon avis) Autrement dit, si le cadre Abdère était merdique, je l'obtenir, mais il est très bien fait et très riche en fonctionnalités.

D'autre part, les caractéristiques de ce cadre Abdera a, existe en raison de la nature du projet. Il est principalement un serveur AtomPub, de sorte qu'il est censé données de poignée fournies par les clients. Mais la manipulation google clients API nécessitent un peu aussi, bien que la bibliothèque cliente de Google ne propose pas la possibilité.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top