問題タブ [odata4j]

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 投票する
1 に答える
801 参照

java - odata4jのQueryInfoから「フィルター」を処理する方法

私のRESTfulWebサービスは、プロデューサーにいくつかのフィルター情報をリクエストで渡します。たとえば、それらのURLには次のものが含まれます:-/ ACCOUNT-LIST?$ filter = Id eq '45012'

これをodata4jで処理するにはどうすればよいですか?

odata4j JavaDocから、フィルターのタイプがBoolCommonExpressionであることがわかりますが、これを処理する方法に関するドキュメントや例は表示されません。

また、渡された複数のフィルターオプションを処理するにはどうすればよいですか?

ありがとう

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

android - odata4j コンシューマー関数呼び出し

Android クライアント コンシューマーの odata4j で ext 関数を呼び出す際に問題が発生しています。例えば、Netflix公共サービスの機能「映画」。

関数のメタデータ:

と私のコード:

この callFunction メソッドでは、次のエラーで終了します。

興味深いのは、c.dump.all(true) で行を削除すると、callFunction にエラーはありませんが、データにアクセスできません。

callFunction メソッドを正しく理解しているかどうかはわかりません。関数のメタデータ エントリに EntitySet 属性と ReturnType 属性がありますが、OObject として結果にアクセスできると思います。それとも私が間違っていますか?関数の応答を取得してそのデータにアクセスする方法の例はありますか。誰でもこれで私を助けてくれませんか。どうもありがとうございました。

ジリ

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

json - OData4j は JSON 形式で応答を要求しますか、それとも応答を JSON 形式に変換しますか? (アンドロイド)

次のコードを使用して、Android OData サービス コンシューマーを作成しています。

私が知りたいのは、クライアントがServicesコンシューマーを介してリクエストを行うとき、リクエストによってサーバーが JSON 形式の応答を作成するか、OData4j/コンシューマーが応答を JSON 形式に変換するかです。

助けてくれてありがとう。:)

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

wcf - OData4j 例外 - 「奇数の文字」および「keyString の不適切な valueString 部分」

編集:

解決策は、問題のテーブルをミラーリングし、日付を varchar に変換するビューを作成してから、一致する照合で日付に戻すことでした

編集の終わり

OData4j が私の WCF Data Service サーバーの 1 つから datetime 値を正常に読み取るのに、別の WCF Data Service から同じ形式でまったく同じ datetime 型を読み取るときに、不正な引数の例外 (keyString の一部として不適切な valueString) が発生する理由を誰か教えてもらえますか?

java.lang.IllegalArgumentException: keyString の一部として不適切な valueString [datetime'2012-01-24T14%3A57%3A22.243']

もう1つの問題は、OData4jがdatetime型の読み取りに問題がなかったサービスからJSON応答を要求すると、別の不正な引数例外が発生し、エラーメッセージが「奇数文字」になることです。

java.lang.IllegalArgumentException: org.odata4j.repack.org.apache.commons.codec.DecoderException: 文字数が奇数です。

WCF Data Services は複数のソースを持つことができないため、それぞれ独自の Entity Data Model ソース (既存のデータベースから) を持つ 2 つのプロジェクトを作成しました。そして、上で述べたように、これらの迷惑なエラーが発生しています。

結論として...

例 1: keyString の一部として不適切な valueString - datetime を読み取る場合。にも起こりFormatType.JSONます。

例 2: 奇数の文字。datetime の読み取りでのみ発生しFormatType.JSON、問題はありません。

私が望むのは、JSON 応答を受け取り (ATOM はまだ Android には多すぎる)、datetime プロパティの読み取りに問題がないことです。


私を助けることができる体はありませんか?

Googleで解決策を見つけようとして指をすり減らしてきましたが、運がありません。

日時に問題のないデータベースの照合は「Danish_Norwegian_CI_AS」であり、読み取りエラーのあるデータベースの照合は「SQL_Danish_Pref_CP1_CI_AS」です。これに意味があるかどうかはわかりませんが、何か関係があるのではないかと疑っています。

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

jquery - WCFデータサービス(OData)を備えたJQGrid。loadBeforeSendは編集モードでは呼び出されません。setRequestHeaderを実行できません

この素晴らしいjqgridプラグインに少し問題があり、WCFデータサービス(実際にはそうではありませんが、非常によく似たodata4jサービス)で使用しようとしています。ちなみに、odataサービスでjqgridを使用することを考えている人がいる場合は、私に連絡してください。たとえば、グリッドxmlreaderを構成してodataxml構造を読み取る方法などの難しい質問に対する回答を見つけました。 ( ヒント:

含むjquery.xmlns.js

とにかく、問題は、odataサービスが、httpメソッドではなく、通常のPOSTでカスタムリクエストヘッダーとして送信される編集操作(DELETE、PUT、MERGE)に対応するメソッドを必要とすることです。その理由は、ほとんどのファイアウォールがPUTおよびDELETE httpメソッドの通過を許可していないためと思われます。これは、たとえば、推測できる場合に備えて、サーバーに新しいファイルを配置したり、ファイルを削除したりできるためです。有効なパス。簡単に言うと、loadBeforeSendイベントはインライン編集またはフォーム編集ではトリガーされません...グリッドの完全なデータ要求でトリガーされていることがわかりますがserializeEditData、編集フォームから送信したときにのみイベントがトリガーされます。jqgridソースファイル(grid.formedit.jsgrid.inlineedit.js)そして、beforesendキーワードでヒットを取得できませんでした。そこには、serializeeditdataのみが表示されています。私は何かが足りないのですか?xhrグリッドが使用するajaxオブジェクトに必要なヘッダーを設定する別の方法はありますか?そのxhrオブジェクトはグリッドによって公開されていますか?

以下に、編集イベントを処理する必要があるコードがあります...繰り返しますが、loadBeforeSendはトリガーされません...

よろしくお願いします、セルバン

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

odata4j - 不明な数の子オブジェクトで OData4J を使用するにはどうすればよいですか?

createEntity複数の子コレクションを持つオブジェクトの OEntity を構築しようとしています。

多くのサンプル プロジェクトを見てきましたが、それらはすべて、コレクション内に既知の数の子オブジェクトがあり、.inLine(“ObjectName”, ObjectOEntity1, ObjecteOEntity2…)

ドキュメントを調べてみましたが、インラインで親オブジェクトに追加できる OEntity オブジェクトのコレクションを作成できると思わせるものは何も特定できませんでした。

私が見つけた最も近いものは、以下にリストされている例でした:

http://code.google.com/p/odata4j/source/browse/odata4j-fit/src/test/java/org/odata4j/producer/jpa/northwind/test/CreateTest.java?name=0.6

他の誰かがこの問題に遭遇しましたか?
もしそうなら、どうやってそれを回避しましたか?

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

android - odata4jによって送信されるHTTPリクエストのタイムアウトを減らす方法

モバイルAndroidアプリでodata4jライブラリを使用しようとしています。リクエストを送信した直後にデバイスがモバイル接続を失ったために、HTTPリクエストが応答を受け取らない場合があります。それを再現してタイミングを調整しようと数回試みた後、ライブラリが「java.net.SocketException:接続がタイムアウトしました」をスローするのに約27分かかることに気付きました。このタイムアウトを減らして、障害をより迅速に処理できるようにする方法はありますか?ありがとう。

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

spring - OData4jおよびCXFとSpring

odata4jを既存のCXFサービスアプリケーションに統合しようとしています。サーブレットは、既存のSOAPおよびRESTサービスをすでにホストしています。私のアプリケーションサーバーはtomcatです。

私のweb.xml:

既存のSOAPおよびRESTサービスは、jaxrsおよびjaxws構成ファイルを介して構成されます。

JPAODataプロデューサーファクトリを作成しました。

このodataサービスを含める最もクリーンな方法は何ですか?

助けてくれてありがとう!

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

android - odata、Noclassdeffounderror

以下は、odataを使用してデータを取得しようとしているAndroidのコードです。OdataWebNorthwindModelServiceはプロキシクラス(自動生成)の名前です...ヘルプについてはhttp://weblogs.asp.net/uruit/archive/2011/09/13/accessing-odata-from-android-using-restlet.aspxをフォローしました...しかし私はいくつかの問題を抱えています..私を助けてください。

以下は、アプリケーションの実行中に発生したエラーです

デバッグを試みたときにコンストラクターからエラーが発生しています。以下は自動生成されたコードです

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

android - Android odata4j コンシューマー EntitySet が見つかりません

Android から OData サーバーにデータを入れようとしています。

データをサーバーに送信する私の方法:

アプリケーションを起動するたびに、次のエラーが表示されadb logcatます。

DBModelどういうわけか名前空間を含める必要があると思います。しかし、方法がわからず、ドキュメントで見つけることができないようです。

編集:ODataConsumer.dump.all(true);クライアントがサーバーから何を受け取っているかを確認する行を含めました。$metadata出力で上記のように全体を見ることができます。

したがって、クライアントはサーバーに接続し、 EntitySetにアクセスできますinsertStuff。しかし、それでもエラーが表示されます