2012-05-07 4 views
0

ノードマシンにデプロイされた "checkResult"サービスは、ノード上の結果を要求を送信するクラスタコントローラに返すように定義されています。ファイル形式のノードの結果は、多くの場合、毎日のログファイルがあります。まずWSDLはFILEタイプを転送できますか?

、私はそれだけでファイルの全体の内容をパックするために単一の文字列を使用して、[OKかもしれないと思ったので、私はOUTTYPE *がcharである

checkResult(inType *in,OutType *out) 

*を定義しました。それから私は、文字列がKBの長さ以上になる可能性があることに気付きました。だからここで文字列を使うのが適切かどうか疑問に思う。

私はたくさんのグーグルで検索され、wsdlで許可されている最大長(ローカルのmaxbufferの長さと競合する可能性があります)を見つけることができず、ファイルタイプパラメータの転送に関する情報も見つかりませんでした。

struct型を使用することをお勧めしますが、ファイル内でネストされている可能性があり、内部の要素の一部がなくてもパースできない場合があります。

ウェブサービスでファイルタイプの結果または大量のデータを返す必要がある場合はどうしましたか? (SOAP)、ウェブ・サービス・リクエストまたはレスポンスに大量のデータを転送する場合

PSはC.

答えて

1

の両方のサーバーとクライアント、データを含む対の取り付け機構を使用することが一般的により良いやり方であります体の一部。おそらく、取り付け機構を考慮するため(最も広い狭い採択へ):

  • メッセージ送信最適化メカニズム(MTOM) - (これらの仕様の最新http://www.w3.org/TR/soap12- mtom /)であり、主流言語の多くでサポートされています。
  • SOAP with Attachments - この仕様(http://www.w3.org/TR/SOAP-attachments)は長年にわたり使用されており、いくつかの言語でサポートされていますが、特にMicrosoftではサポートされていません。
  • ダイレクトインターネットメッセージカプセル化(DIME) - この仕様(http://bgp.potaroo.net/ietf/all-ids/draft-nielsen-dime-02.txt)はMicrosoftによってプッシュされ、サポートされていますjavaや.NETを含む複数の言語/フレームワークで提供されます。

理想的には、MTOMベースのWebサービスを示すWSDLからコードスタブ生成を直接行うためのフレームワークを使用できます。そのようなWSDL文書の

重要な部分は、次のとおりタイプの添付への参照(スキーマ)セクション に対する結合

  • プレースホルダで

    1. MTOMポリシー宣言
    2. ポリシーの適用を

    このサイトのセクション1.2(http://www.w3.org/Submission/WS-MTOMPolicy/)の例では、契約より先に作業していてWSDLを手にしている場合、 MTOMポリシーを宣言して適用するための追加を行う必要があります。同じサイトの付録Iは、WebサービスクライアントまたはサーバーがMTOM添付ファイルへの参照を識別できるようにするスキーマ要素の例を示しています。

    私はCでWebサービスやクライアントを実装していませんが、最近更新されたパッケージを簡単にスキャンするとgSoap(http://www.cs.fsu.edu/~engelen/soap.html)が可能ですあなたの努力を助けるために。

    これらのドキュメントを見て、プロジェクトの進歩に役立つかどうかを確認します。