問題タブ [mtom]
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.
wcf - WCF サービスで MTOM をオンにした場合のパフォーマンスへの影響
実際にバイナリをネットワーク上で転送していない WCF サービスに対して MTOM が有効になっている場合、顕著なパフォーマンスの低下はありますか?
c# - Axis2 Web サービスの C# クライアントが「しかし期待される 'text/xml'」と不平を言う
私の C# サンプル クライアント ASP.NET プログラムは、Axis2 サーバーで呼び出しを正常に実行しますが、クライアントは応答を好まないようです。
私は得る:
クライアントは、'multipart/related;' の応答コンテンツ タイプを見つけました。境界 = MIMEBoundaryurn_uuid_38D413ACFC9D56F28E1258666845186; type="application/xop+xml"; start="<0.urn:uuid:38D413ACFC9D56F28E1258666845187@apache.org>"; start-info="text/xml"' ですが、'text/xml' が必要です。
MSDN フォーラムによると、MTOM を有効にする必要があると思われますが、現在は廃止された WSE 3 パッケージについてのみ説明しています。
WCF スペースでは、C# の ASP.NET プログラムの場合、MTOM を有効にする方法、またはこの応答のコンテンツ タイプの不一致を修正する方法を教えてください。実は、次に MTOM が必要になります。
java - DataHandler の InputStream が空かどうかを調べる
私のアプリケーションでは、添付ファイルを取得する Web サービスを開発しています。ファイルは JaxB を介して DataHandler オブジェクトにマップされ、DataHandler.getInputStream() を介してファイルにアクセスできます。
私の問題はこれです:ファイル属性がWebサービスリクエストに存在するが、ファイルが添付されていない場合でも、DataHandlerオブジェクトとそのgetInputStream().available() = 11バイト(私が推測するヘッダー...? ?)。
inputStream が空であることを知ることができますか?
ありがとう、アロン
java - Spring Web Services Framework で MTOM Web サービスをストリーミングする
MTOM と Spring WS を使用して、サーバーからクライアントに大きなファイルを送信したいと考えています。これがこの種のことに対する最善のアプローチではないことは理解していますが、それは要件です。私は MTOM をセットアップしており、50MB 前後の小さなファイルに最適です。大きなファイルでメモリ不足エラーが発生し、さまざまなヒープ領域サイズを変更することで、わずかに大きなファイルを送信できますが、1 GB に近いものはありません。1GB は、これに対する私のテスト ケースです。サーバーからクライアントに MTOM サービスをストリーミングまたはチャンクするにはどうすればよいですか? SaajSoapMessageFactory で Java 6 update 17、Tomcat 6、Spring WS 1.5.7 を使用しています。
jax-ws でのストリーミングの例を見つけたのですが、これを Spring WS エンドポイントに組み込む方法がわかりません。
java - JAX-WS を使用した大きな MTOM/XOP メッセージの作成
JAX-WS での MTOM/XOP の使用について質問があります。大量のバイナリ データを送信する Web サービスを作成しています。クライアントは多数のファイルを要求し、サーバーは応答でファイルを返します。
XOPを正しく実装するように応答を正しく構築することはできますが、送信する前に応答全体をメモリに保存するため、メモリ関連の問題が発生します。この Web サービスが送信するファイルは非常に大きくなる可能性があるため (ギガバイト単位など)、応答をメモリに格納することはできません。
このオラクルのウェブサイト(およびこれと一緒に)はこの問題を解決しているようですが、私はそれを理解していません. オブジェクトを使用してリクエスト/レスポンスをストリーミングしていると思いますDataHandler
が、インスタンス化する方法がわかりません。
を使用して、既存の WSDL から JAX-WS クラス ファイルを生成していますwsimport
。Java 6 で JAX-WS RI 2.1.6 を使用しています。
最初にすべてをメモリに保存することなく、ビルド中に応答を送信するにはどうすればよいですか?
よろしくお願いします。
UPDATE 12/17:バイナリ データを保持する WSDL のスキーマ要素に次の属性を追加しました。これにより、オブジェクトが JAXB クラスwsimport
に追加されます。DataHandler
次に、ファイルの内容全体を追加する代わりに、応答にAFileDataHandler
を追加して、サーバーが各ファイルの内容をすべてメモリに保持する代わりにストリーミングできるようにします。
そのため、サーバーは応答を正しく作成し、クライアントは要求を受信したときに各ファイルをディスクに適切に保存します。ただし、何らかの理由で、クライアントは引き続き応答全体をメモリに読み込みます。
サーバーコード (SIB):
クライアントコード:
c# - MTOMにはWCFでmessageContractが必要ですか?
Mtomの使用中にデータコントラクトを使用する方法はありますか?
soap - soapUI を使用して MTOM Web サービスをテストするにはどうすればよいですか?
Apache FOPをラップする Web サービスを構築しました。XML を送信すると、レンダリングされた PDF を含む MTOM ストリームが提供されます。動作するようになったので、いくつかのパフォーマンス テストを実行したいと思います。soapUI は MTOM をサポートしていると言っており、私はそれを他のすべての Web サービス パフォーマンス テストに使用しているので、カスタム テスト ハーネスを作成する必要がなければ素晴らしいと思います。
問題は次のとおりです。soapUI で応答を取得すると、次のようになります。
バイナリデータをダンプしてデコードするためにsoapUIを取得するにはどうすればよいですか? 私はそれが有効なPDFであることを確認したいと思っています。(簡潔にするために応答のデータを切り捨て、有罪を保護するためにそれを改変しました!したがって、この投稿の実際のPDFデータではありません)
更新: 「生の」応答タブにある soapUI の表示は次のとおりです。
.net - basicHttpBindingとwsHttpBinding
WCFエンドポイントでは、basicHttpBindingとwsHttpBindingの違いは何ですか?それぞれをいつ使用する必要がありますか?
java - Tomcat 6 XFire MTOM Web サービスの問題
Web サービスの実装として、Tomcat で XFire 1.2.6 を使用しています。サービスは XFireProxyFactory と @EnableMTOM アノテーションを使用して作成されます。クライアントも XFire で、MTOM を使用しています。
Tomcat 5.5.20では問題なく動作しましたが、Tomcat 6.0.20では何らかの理由で失敗します。クライアントから Web サービスにアクセスしようとすると、クライアントで次のエラーが発生しました。
問題は、サーバー ログに何もないことです。
クライアントでMTOBを無効にすると、実際にmtomを必要とするメソッドをリクエストするまで機能します。
Tomcat 5.5 と比較した Tomcat 6 のどのような変更が mtom の問題を引き起こす可能性があるのか 誰にもわかりますか? 多くの情報を提供していないことはわかっていますが、それ以上の情報はなく、どこを見ればいいのかアイデアが尽きています。野生の質問でさえ感謝されます。
編集: Webapp ログは、Web サービスが正常にデプロイされたことを示しています。クライアントで mtom が有効になっていない場合でも、Web サービスを呼び出すことができます。このエラーが発生し、サーバーにログが記録されないのは、mtom が無効になっているクライアントの場合だけです。