2011-01-11 25 views
5

.protoファイルを生成するツールを知っている人はいますか?既存のxsdから、または既存のJavaオブジェクトから既存のJavaオブジェクトまたはxsdから.protoファイルを生成

私はApache CXFを使用してWebサービスコールを行っています。返されるオブジェクトは、xsdから自動生成されています。

okこれで、プロトコルバッファを使用してこのデータを別のシステムに渡したいと考えています。オブジェクトモデルは非常に複雑で定期的に変更されます。つまり、オブジェクトモデルが変更されるたびに新しいxsdが取得されます。私はGoogleプロトコルバッファを使用してデータを送信できるように.protoファイルを自動生成できるようにしたいと考えています。

私はどこからでも見てきましたが、立ち往生しています。

私は私は

に満足しています。)XSD または IIからの.protoファイルを生成します。)XSDから生成されたJavaオブジェクト(から.protoファイルを生成する)

Iこれを行う方法が見つからない場合は、自分で何かを書いてください... あなたのお手伝いが大変です

+0

- >プロト(経由。 protobuf-net) - おそらく少し脆い、特にオブジェクトが複雑な場合.... –

+0

mmm .. okありがとう...回避策かもしれない - 私はgoogleがこれを行うためのツールを提供していないと信じられない彼らがここでプロトコルバッファのhteポイントを見逃していない限り、彼らは、exstingデータモデルを取ってそれをプロトファイルに変換することは、かなりの一般的な使用例になるだろうと仮定します。 – ConfusedProtocolBuffer

+0

だから最近私は仕事のためにこれをしなければなりませんでした。私はオープンソースコードを持っています。それは非常に簡単ですが、私が使用する共通のデータ構造のほとんどをカバーしています。コードは[here](https://github.com/lloydsparkes/java-proto-generator)から手に入れることができます – lloydsparkes

答えて

1

私はproto-stuffがある程度役立つと思います。私はそれがあなたのために.protoファイルを生成するかどうかはわかりませんが、protostuff-runtimeは自動的にあなたの既存のポーズを様々なフォーマットにすることができます。

+0

あなたの答えはありがとう、私はまだprotoファイルを生成する必要があります私はこれを開発チームに提供する必要があるので、C#のソリューションの反対側を構築してください。どうも – ConfusedProtocolBuffer

0

Tranchisユーティリティは.XSDファイルを.ProtoとThriftの両方に変換します。

https://github.com/tranchis/xsd2thrift

これは、XMLスキーマから基本的なスキーマの種類を変換するために非常に適しています。

0

お試しくださいprotostuff-runtime-proto project from Github。 あなたがRuntimeSchemaをprotostuffしている場合、あなたはこのコードによって、.protoファイルに変換することができます:私は(Xsd.exeでは経由)XSDベース>のC#でそれを行うことができるかもしれない

System.out.println(Generators.newProtoGenerator(schema).generate()); 
関連する問題