問題タブ [apache-wink]
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.
json - JSON と Wink を使用した JAX-RS クライアント/サーバー アプリケーション
JSON (Jackson コンバーター) 形式と Wink プロバイダーを使用して、JAX-RS サーバー (WebSphere Application Server 上) とクライアント アプリケーションを実装したいと考えています。
REST サービスとの間で受け渡しされる DTO クラスに JAXB アノテーションを使用する必要があるので、シリアライズ可能にする必要がありますか?
クライアント/サーバー間のポスト メソッド ネゴシエーションでは、JSONObject またはクラス タイプ、つまり MyClass または String のどちらの応答タイプを使用する必要がありますか?
Rest サービスのドメイン クラスに JAXB アノテーションを使用するのはどのような場合ですか?
あなたの洞察/方向性は高く評価されます。
前もってありがとう、エルウィン
escaping - @FormParam コンテンツ Apache Wink に埋め込まれた ' のために切り捨てられました
URL エンコードされたフォームを使用して単一の変数 (改行をスペースに変換し、コンテンツをエスケープ) で XML ドキュメントを送信するという愚かなことをしていることは認めますが、これはフォーム データしか送信できないクライアントに対応するためです。
エスケープされた XML コンテンツの文字列の 1 つにアポストロフィが含まれていた場合
リクエスト本文の解析が停止し、変数の残りは返されません。もちろん、取得する XML ドキュメントが不完全であるため、これは問題を引き起こします。
受信者が Apache Wink JAX-RS ライブラリを使用している場合、フォーム パラメータでアポストロフィを渡す適切な方法は何ですか?
次のような行:
正常に動作しますが、次のような行です。
「Square project」以降は切り捨て
エスケープされる文字は次のとおりです。
java - 応答としてファイルを返す適切な方法は何ですか?
基本的に、文字列パラメーターを受け取る REST サービスを提供し、そのパラメーターを使用して別のシステムからファイルを取得し、取得したファイルを応答として返す必要があります。
効果は、ユーザーが pdf またはその他のバイナリ ファイル リンクをクリックし、ブラウザがそのファイルを保存/ダウンロードするように求める場合と同じである必要があります。
いくつかのポイント:
- ファイルをストリーミングすることは可能ですか(ソースシステムから受信したバイトを送信するため)。つまり、非常に大きなファイルをどのように処理するのでしょうか?
- ストリーミングにも関連していますが、通常の HttpServletResponse を使用する場合、大きなファイルが完全に読み込まれるまで待つ必要があります
return response.build()
か?
Apache Wink を使用してこれを行うにはどうすればよいですか?
PS 申し訳ありませんが、これはウィンクの専門家にとっては些細なことかもしれませんが、開発者ガイドについて頭を悩ませ始めたところです。
java - JSPを使用してApacheWinkからXHTML出力を返す方法は?
これまで、 ApacheWinkを使用して基本的なWebサービスをセットアップすることに成功しました。これには、提供されているサンプルに従って、Atom、JSON、HTML、XHTML、XML、およびプレーンテキストのメディアタイプを返すことが含まれます。また、MessageBodyWriterを使用して、XHTML出力を「手動で」生成することもできました。これまでのところ、素晴らしい。既存のウィンクメカニズムを介して、ほとんどのメディアタイプを返すことができてうれしいです。
私が今やろうとしているのは、返されたXHTMLコンテンツにJSPを使用させることです。つまり、JSPを出力テンプレートとして使用し、POJOをパラメーターとして送信してJSPのフィールドに入力したいと思います。以下は、私が今持っているもののいくつかの擬似コードです。
JSPを完全に無視しているようです。そして、最終的にその方法を理解した場合、POJOをパラメーターとして渡す方法を知る必要があります。Apache WinkはJSPベースのWebサービスと相互運用できると思うので、ここで欠けているものがあることはわかっています。Winkのドキュメントは一般的に優れていますが、これについては何も見つかりませんでした。助けてくれてありがとう、理想的には実例へのリンク。
rest - RuntimeException:JAXRSのBufferedInMultiPartのMessageBodyReader実装が見つかりませんでした
マルチパートのJAXRS呼び出しを行おうとすると、次のRuntimeExceptionが発生します。
java.lang.RuntimeException:クラスorg.apache.wink.common.model.multipart.BufferedInMultiPartタイプおよびtext/ html; charset=utf-8メディアタイプのjavax.ws.rs.ext.MessageBodyReader実装が見つかりませんでした。すべてのエンティティプロバイダーが正しく登録されていることを確認します。JAX-RSエンティティプロバイダーが現在存在しない場合は、カスタムjavax.ws.rs.ext.MessageBodyReaderプロバイダーを追加して、タイプとメディアタイプを処理します。at org.apache.wink.client.internal.handlers.ClientResponseImpl.readEntity(ClientResponseImpl.java:12 2)at org.apache.wink.client.internal.handlers.ClientResponseImpl.getEntity(ClientResponseImpl.java:65)atorg。 apache.wink.client.internal.handlers.ClientResponseImpl.getEntity(ClientResponseImpl.java:52)
誰かが例外の原因を理解するのを手伝ってくれますか?それはたまにしか起こりません。
rest - winkベースのREST APIでdojox.grid.DataGridをソートする方法は?
Dojo datagrid クライアント側を使用していますが、うまく機能し、ドキュメントによると、列ヘッダーをクリックすると次の GET 要求が生成されます。
問題は、値が設定されていないため、Apache Wink フレームワークを使用してサーバー側でクエリ パラメーター "sort(+isbn)" を解釈できないことです。たとえば、代わりに「sort=+isbn」のようなものを期待します。
これが私のサーバー側のコードです:
「sort(+isbn)」には値が割り当てられていないため、無効なクエリ パラメータのようです。Dojo データグリッドがこの規則を使用する理由がわかりません。
Java 側でこれを回避する方法について、理想的には Wink または別のメカニズムを使用して GET 要求を処理する方法について助けていただければ幸いです。
java - ウィンク嚥下の例外
jaxb/jackson の wink で Enum 型にいくつかの検証を実装しようとしています。
いくつかの値を取る列挙型があります。nullを許可したい、つまりxml/jsonに設定したくないが、無効な値をチェックしてエラーを出したい。
デフォルトでは、enum にない値を指定すると jaxb/wink は単に null を返すことがわかったので、セッターを使用して入力の検証を許可しようとしました。Level.valueOf(newLevel) を使用して、指定された文字列を値に変換しようとすると、例外がスローされ、スタック トレースと http エラーが発生します。これは問題ありませんが、私が本当に必要としているのは、エラー応答のマーシャリングをある程度制御できるカスタム例外です。投げてみたけどウインク(だと思う)に飲み込まれてしまう。
例外ではなくスロー可能を使用する以外に、これを達成する方法はありますか?
websphere - OSGi の Apache Wink クライアント
WebSphere Liberty Profile 8.5 で実行されている OSGi アプリケーションで Apache Wink Client を使用しようとしています。
コンパイラは、ClientResponse.getEntity() への呼び出しの周りで次のエラーを生成します。
ClientResponse は、com.ibm.websphere.appserver.thirdparty.jaxrs の Export-Package 宣言に含まれていない org.apache.wink.client.internal.BaseRequestResponse を拡張しているようです。
OSGi アプリケーションで jaxrs-1.1 フィーチャーから Apache Wink クライアントを使用することは可能ですか?
ajax - IBM JAX-RS 1.1 処理 Dojo Ajax OPTIONS 要求
私は現在、WAS 7 と Web 2.0 Feature Pack 1.1.0.0 を介して IBM JAX-RS 機能を試しています。私が直面している問題は、クライアントの Dojo ajax 呼び出しが CORS の状況を引き起こしていることです。基本的に、OPTIONS 要求を適切に処理する方法を見つけようとしています。
参照された URL の例に従いました (これは WAS 8 用ですが、私が遊んでいる部分には影響しません)。ただし、システムは OPTIONS をサポートするメソッドを見つけることができないと報告されています。
どんな助けでも大歓迎です!
xml - Apache Wink は印刷できない xml 文字を無視できますか?
私のアプリケーションは、Wink と JDK (1.6) に組み込まれている JAXB プロバイダーを使用して REST API をサポートしています。制御文字を含む PUT リクエストを受け取ることがあります。
私のアプリケーションに関する限り、制御文字は有効で意味のある入力を構成します。ただし、アプリケーションは、これらの文字を消化できないという悪名高い例外をスローします。
JAXB プロバイダーにこれらの文字を無視するように指示する方法はおそらくありません (ある時点で Xml を解析する必要があり、違法は違法であるため..)。どうすればこれを機能させることができますか?Rest クライアントにこれらの文字を送信する前にエスケープするように指示する方法はありますか?