Est-ce que quelqu'un connaît-il de tout outil qui générera un fichier .Proto? Soit d'un XSD existant, soit des objets Java existants? P>
J'utilise Apache CXF pour effectuer un appel de service Web. L'objet renvoyé a été généré automatiquement à partir d'un XSD. P>
OK, donc je veux maintenant transmettre ces données à l'aide de tampons de protocole vers un autre système. Le modèle d'objet est très complexe et change régulièrement - c'est-à-dire une nouvelle XSD chaque fois que le modèle d'objet a changé. J'aimerais pouvoir générer automatiquement un fichier .Proto afin que je puisse envoyer des données à l'aide de tampons de protocole Google. P>
Je cherche partout mais je suis tombé coincé. P>
Je suis heureux de p>
i.) Générez du fichier .Proto du XSD ou II.) Générez du fichier .Proto des objets Java (qui ont été générés à partir du XSD) P>
Je ne trouve aucun moyen de le faire déjà d'écrire quelque chose moi-même ... Votre aide beaucoup appréciée p>
3 Réponses :
Je crois que proto-truc sera utile pour vous dans une certaine mesure. Je ne suis pas sûr que cela génère le fichier .poto pour vous, mais protostuff-runtime fort> active automatiquement vos pojos existants à SER / SERER à divers formats. P>
Merci de votre réponse, la chose est que je dois toujours générer le fichier de proto, car je dois donner ceci à l'équipe de développement de l'autre côté de la solution en C # ... toutes les autres idées? Merci
L'utilitaire Tranchis convertit les fichiers .xsd en .poto et l'épargne. p>
https://github.com/tranchis/xsd2thrift P>
Cela fonctionne assez bien pour convertir des types de schéma de base du schéma XML. P>
Celui-ci a travaillé pour moi, il y avait un peu de temps d'échauffement :) Vérifié le projet et couru localement. Les commandes sur Git sont en quelque sorte obsolètes. On peut vérifier les junits pour créer des commandes et fonctionne.
essayer protoTF-proto code>
projet de Github.
Si vous avez protostuff RunTimeschema, vous pouvez le convertir au fichier .poto par ce code:
System.out.println(Generators.newProtoGenerator(schema).generate());
Ce projet semble jamais avoir eu une libération
Je pourrais peut-être le faire avec XSD-> C # (via Xsd.exe) ->. Proto (via Protobuf-Net) - probablement un peu cassant, surtout si les objets sont complexes ....
mmm La convertir en un fichier de proto serait un cas d'une utilisation courante - à moins d'avoir manqué le point de tampons de protocoles HTE ici ...
Je suis tombé sur ce projet ce matin. Je n'ai pas encore essayé de l'essayer, mais il prétend supporter d'aller directement de .xsd à .Proto: Github.com/tranchis / xsd2thrift
Je devais donc récemment faire cela pour le travail et j'ai ouvert le code. C'est assez simple, mais il couvre la plupart des structures de données communes que j'utilise. Vous pouvez obtenir le code de ici