問題タブ [olingo]

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.

0 投票する
2 に答える
4346 参照

java - Olingo または Odata4j を使用した Odata

私は頭の上にいます。

最も広いレベルでは、Mule を使用して記述されたサービスによって公開された既存のデータ プールに Odata インターフェイスを公開しようとしています。Mule サービスが呼び出されたときに、URL が Odata 形式であることを検出した場合は、処理を Java で記述されたものに委任し、そのコンポーネントからの応答を呼び出し元に送り返したいと考えています。

Olingo および OData4j ライブラリを見つけました。私の問題は、これらが Web サービスの構築から始まることです。しかし、それは私にとってはあまりにも上流です。私は Web サービスを持っています。理解する必要があるのは、(手元にある) URL を Odata パーサーに渡すためにどのコンポーネントを実装する必要があるかです。Odata パーサーはデータ プロバイダーを呼び出します。

私はこの技術に少し戸惑っています。誰かがこれを明確に説明する非常に基本的なチュートリアルを教えてくれますか? または、「A、B、および C を実装してから、URL を C.foo() に渡す必要があります」のようないくつかの手順を教えてもらえますか?

私は両方のライブラリの入門ドキュメントを試しましたが、どちらも「最初にWebサービスを実装します」から始まり、(少なくとも私には)それがどこで終了し、純粋なOdataが設定されるかを明確に示していません.

ありがとう。

0 投票する
1 に答える
660 参照

apache - Apache Olingo を使用してサービスに対応するスキーマ オブジェクトのリストを取得する

Apache Olingo ライブラリを使用して OData エンドポイントからメタデータを読み取ろうとしています。サービスにあるスキーマのリストを取得したいと考えています。

サンプルコードは次のようになります-

この「サービス」変数を​​初期化するにはどうすればよいですか?

0 投票する
1 に答える
685 参照

java - javaを使用してODataのentitySetのエントリ数を取得する

次のリンクは、Customers エンティティ セットのエントリ数を返しますhttp://services.odata.org/Northwind/Northwind.svc/Customers/ $count

Javaを使用してこの番号を取得するには?

エントリの数を整数として取得するには、この後に何をコーディングすればよいでしょうか?

0 投票する
2 に答える
7459 参照

java - ODATA 結果セットからカウントを返す方法

以下のような Olingo ODATA (バージョン 2) の結果セットからレコードの数を取得しようとしています。

http://services.odata.org/OData/OData.svc/Categories/ $count

上記の URL は 3 を返します/$count

私はこのURLのローカルホストで作業しています:

結果セットをlocalhost/odata/livingODATA/address/$count返しますが、エラーを返します:

を追加しようとしましたがorder by、何も役に立たないようです。

0 投票する
4 に答える
4633 参照

c# - クライアントからの 1 回の要求で、関連するすべての OData エンティティを削除します

例として Northwind データベースを使用すると、各 Customer には Orders のコレクションがあります。特定の顧客とそのすべての注文の間のすべての参照を 1 回のリクエストで削除したいと考えています。

(仕様に基づいて)これを実行できるように見えますDELETE http://services.odata.org/V4/Northwind/Northwind.svc/Customers('ANTON')/Ordersが、クライアントライブラリがこれをサポートしているかどうか疑問に思っています。

C# クライアント ライブラリには Microsoft.OData.Client、Java には Apache Olingo (v4)、JavaScript には BreezeJS を使用しています。これらのいずれかの例は非常に高く評価されます。

編集:エンティティ自体を実際に削除するのではなく、参照を削除するだけであることを明確にしました。

0 投票する
1 に答える
5270 参照

java - Olingo - OData サービスのクライアント ライブラリ用に厳密に型指定された POJO を作成する

RESTful OData API に提供する Java SDK の OData クライアントとして Apache Olingo を使用しています。SDK では、OData エンティティを表す厳密に型指定されたクラスを使用できるようにしたいと考えています。これを簡単に実装するのに苦労しているため、ここで別の戦略が欠けているように感じます。

Olingo の方法はODataClient、API とやり取りするための便利なメソッドをユーザーに提供するオブジェクトを取得することのようです。私のODataClientリクエストを構築するために、一連のファクトリメソッドを使用しています。たとえば、これはCustomersNorthwind サンプル OData サービスから取得するために使用したコードです。必要なクラスclientのインスタンスです。ODataClient

イテレータ (すなわち ) から強く型付けされたエンティティで終わりたいと思いますCustomer customer = iterator.next()。ただし、実際にそれを行う方法はわかりません。

拡張して次のようなキャストを実行しようとするCustomerクラスを作成すると、イテレータ内のオブジェクトは単なるオブジェクトであり、サブクラスについて何も知らないため、が得られます。ODataEntityCustomer customer = (Customer) iterator.next()ClassCastExceptionODataEntityCustomer

次に考えたのはジェネリックを導入することでしたが、そうすると Olingo ライブラリにかなりの量の変更が必要になり、これを行うためのより良い方法があると思いました。

OData サービスは OData 4 を使用する必要があるため、Apache Olingo 4 の開発バージョンを使用しています。

私は何が欠けていますか?

0 投票する
1 に答える
549 参照

odata - 貪欲なオリンゴ $expand

Hibernateの上でOlingo 1.2を使用しています。

250 行を返すリクエストがあり、各行は 1 対多の関係で別のテーブルにリンクしています。

$expand を実行して子テーブルのすべてのデータを取得しましたが、データベースで実行されたクエリを調べると、251 の個別の呼び出しが行われているように見えます。1 つは 250 行を返すマスター テーブル用で、次に各テーブル用に 1 つずつです。子レコードを返す行。

Olingo コードを見ると、この怠惰なアプローチは設計によるものです。

私は Microsoft ODATA プロセッサで $expand をテストしましたが、この場合、彼らは貪欲なアプローチを使用しています。

私の質問は次のとおりです: $expand に貪欲なアプローチを使用するように Olingo を切り替えるにはどうすればよいですか (つまり、結合をデータベースにプッシュする)?