問題タブ [protocol-buffers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
eclipse - Maven 2 で生成されたクラスを Eclipse で解決するにはどうすればよいですか?
プロジェクト用にいくつかの Java クラスを生成するために Google Protocol Buffers を使用しています。Maven 2 とその「antrun」プラグインを使用すると、これらのクラスはコンパイル前に新しく生成され、ターゲット/生成されたソースに出力され、ビルド中にクラスパスに配置されます。したがって、POM からプロジェクトをビルドすることは問題ありません。
ただし、Eclipse は生成されたクラスを解決する方法を知りません。これは、それが含まれているフォルダーが開発中に IDE のクラスパスにないように見えるためです。私は m2eclipse を使用しており、依存関係を管理しているので、Maven がこれを処理することを期待していました。
生成されたコードの IDE サポート (コード補完など) を取得するにはどうすればよいですか?
java - 内部サーバーエラー
アプリケーションの実行中に異常なエラーが発生しました。以前に誰かがこれに遭遇したかどうか疑問に思っています。Google プロトコル バッファを使用しています。サーブレットがリクエストを受け取り、それを処理しようとしています。次のコードがあります。
2 行目を実行した後、Myeclipse デバッガーで以下のエラーが発生します。
ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse) 行のソースが見つかりません: 310
Jboss アプリサーバーを使用しています。HTTP Status-Code 500: Internal Server Error が表示されます。
誰か提案/考えはありますか?
c# - 拡張機能を備えたプロトコルバッファ
私はおそらく何かを見落としていますが、後で拡張機能を提供するための簡単な方法にプロトコルバッファを取り組もうとしています。それは少し不明確に思えるので、私は直接問題に飛び込みます。
構造化データの記述を含むさまざまなタスクをサポートするアセンブリを作成しています。プロトコルバッファを使用する絶好のタイミング。プロトコルバッファを使用するプライマリクラスは、StateDefinitionと呼ばれます。これが私が思いついた.protoファイルです:
私の目標は、これらの_StateDefメッセージを、必要なフィールドで後で拡張できるようにすることでした。ただし、この拡張機能は、現在作成しているライブラリとは関係なく発生します。
Kagents.dll->StateDefinitionの解析などを処理します。
Kagents.dllを参照するもの->必要な状態を定義するための「extendGraphicsStateDef」を含むprotobuffファイルがあります。
「extendGraphicsStateDef」を定義すると、プロパティを使用してこれらのフィールドにアクセスし、面倒な「Extendible.AppendValue()」およびGetValue()構文を回避できるコードが生成されることを期待していました。
私が考案した解決策の1つは、ハックのようですが、次のような拡張メソッドを使用して、参照DLLでクラスを定義することです。
誰かがもっと良い方法を考えることができれば、私は大いに義務づけられるでしょう。=)また、問題の説明がどれほど明確になったかわからないので、何か説明や情報があれば教えてください。=)
編集:それで、これについてよく考えて、私が問題に間違ってアプローチしていることに気づいた後。StateReferenceは、さまざまなGameStateのリストを格納することになっています。また、StateDefinitionを格納します。これは、この状態参照の状態を記述する必要があります。現在、状態バッファーを別のクラス(GraphicsStateDef)に逆シリアル化しようとしていますが、実際には状態オブジェクト自体に逆シリアル化する必要があります。
したがって、StateDefinitionがストリームのコンテナーになり、「繰り返されるStateTypes requiredStates = 1」フィールドに十分な情報のみを抽出するように、設計を再考する必要があります。次に、参照アセンブリで、ストリームの残りの部分をそれぞれの状態に逆シリアル化できます。
これにアプローチする方法について誰かが推奨事項を持っていますか?いくつかのアイデアが策定されていますが、具体的なものは何もありません。他の人の意見を取り入れたいと思います。
c# - 基本クラスの C# ジェネリック型
私は一連のプロトコル バッファ (protobuf-net を使用) を持つシステムを作成しています。すべて継承する抽象クラスで次のようなものを定義したいと考えています。
ただし、プロトコル バッファ シリアル化には型引数が必要です。継承クラスの型を取得する効率的な方法はありますか?
例:
c# - 属性で装飾された C# クラスから .proto ファイルを生成するにはどうすればよいですか?
Google protobuf について頭を悩ませようとしています。C# で protobuf の実装をいくつか見つけましたが、1 つの機能が欠けているようです: 属性で装飾された既存の C# クラスから .proto ファイルを自動的に生成する機能です。
.proto ファイルから自動生成された C# クラスを使用するのではなく、このようにしたい理由は、プロジェクトで C# クラスが既に定義されていて、ProtoBuf を満たすためだけにそれらを複製したくないためです。
誰かがそのようなシナリオに遭遇しましたか?
アップデート
これは、C# クラスを装飾するだけで、.proto ファイルを使用せずに protobuf を使用することは可能ですか?
c# - パラメーターなしのコンストラクターのないクラスで Protobuf-Net を使用することは可能ですか?
Protobuf-Net を使用すると、パラメーターなしのコンストラクターを使用せずにクラスを逆シリアル化することはできないようですが、何か不足している可能性があります。
パラメーターなしのコンストラクターを持つ一部のクラスは必要ありません。使用できる属性やその他のテクニックはありますか?
c# - Protobuf/Protobuf-net でオブジェクト継承のリスト/配列を使用するには?
Protobuf/Protobuf-net と 2 つのクラス (1 つは基本クラス、もう 1 つは基本から派生したクラス) を使用します。
リストをどのようにシリアライズ/デシリアライズしますか?
例えば:
そして、シリアル化される次のフィールド:
リストには SomeBase および SomeDerived オブジェクトが含まれていることに注意してください。
.net - .NETに本番品質のGoogleProtocolBuffersの実装はありますか
タイトルはそれを言います!
Jon Skeetが実装に取り組んでいることを知っていて、インタビュー(Dot net Rocks?)を聞いたところ、彼はそれがwipであると示唆していました。
最新のページにはバージョン番号が表示されています。それで、それは今生産準備ができていますか?
ありがとう
java - Google プロトコル バッファと HTTP
gSoap を使用して、従来の C++ システムを SOA にリファクタリングしています。いくつかのパフォーマンスの問題 (非常に大きな XML) があるため、主任からプロトコル バッファを調べるように依頼されました。私はそうしましたが、とてもクールに見えます (C++ と Java のサポートが必要です)。ただし、プロトコル バッファはシリアル化のためだけのソリューションであり、Java フロントエンドに送信する必要があります。これらのシリアル化されたものを HTTP (内部ネットワークのみ) 経由で送信するには、C++ および Java の観点から何を使用すればよいですか?
PS。別の人が gSoap ソリューションの高速化を試みています。私はプロトコル バッファのみに関心があります。
java - Javaを使用したWCFサービスへのアクセス
Javaで記述されたクライアントを使用してアクセスしたいWCFを使用してWebサービスを開発しています。プロトコルバッファを使用してメッセージをエンコードします(正確にはMarc Gravellのprotobuf-netを使用)。
これを達成することは可能ですか、それともクライアントを.NETで作成する必要がありますか?プロトコルバッファでシリアル化されたデータがバイナリ相互運用可能であることは知っていますが、WCFがエンコードされたプロトコルメッセージにプラットフォーム固有のメタデータを追加するかどうかはわかりません。
WCFサービスがRESTful、SOAPベース、またはその他の形式のWCFサポートであるかどうかは関係ありません。実際のペイロードは、PBを使用してエンコードする必要があります。これは可能ですか?可能であれば、簡単な例をいただければ幸いです。