0

ESB で共有したい静的ファイル (HTML ファイル、画像ファイル、純粋なデータ ファイル (.csv や .xls など) など) がいくつかあります。ESB を介してこれらの要求を受信する別の HTTP サーバーを実行すれば、これを実現できます。代わりに、ESB 自体で処理するのが好きです。着信要求 URL (たとえば、HTTP GET 要求 - http://myesb.com:8280/getstatus.html ) に基づいて、これらの静的ファイルをローカル サーバーのフォルダーから取得します。

VFS メソッドを試してみましたが、不要な「更新」メカニズムが組み込まれているようです。クライアントが要求している場合にのみ、これらのデータを「取得」したいと考えています。

要するに、私は次のように単純なマッピングを行うのが好きです:

http://myesb.com:8280/getstatus.htmlは /var/myapp/status/appstatus.html ファイルの内容を取得します。

更新 私は次のシーケンスを行いました-それを機能させる方法がわかりません:(

<sequence xmlns="http://ws.apache.org/ns/synapse" name="app1status">
   <in>
      <log level="custom">
         <property name="Reached app1status page - in" value="app1 Status"/>
         <property name="transport.vfs.ContentType" value="text/html"/>
         <property xmlns:ns="http://org.apache.synapse/xsd" name="TRPURL:" expression="get-property('From')"/>
      </log>
      <property name="transport.vfs.FileURI" value="vfs:file:///opt/platform/traffic/app1status1.html" scope="transport" type="STRING"/>
      <property name="HTTP_METHOD" value="GET"/>
      <property name="ClientApiNonBlocking" action="remove" scope="axis2"/>
      <header name="To" action="remove"/>
      <property name="RESPONSE" value="true" scope="default" type="STRING"/>
   </in>
   <out>
      <log level="custom">
         <property name="::::::Out:::::Reached app1status" value=" From OUT"/>
         <property name="messageType" value="text/html"/>
         <property name="ContentType" value="text/html"/>
      </log>
      <send/>
   </out>
</sequence>

<in>メディエータでは、次の点に注意してください。

<property name="transport.vfs.FileURI" value="vfs:file:///opt/platform/traffic/app1status1.html" scope="transport" type="STRING"/>

私の意図は、ファイル appstatus1.html のコンテンツを取得して、応答として送り返すことです。しかし、コンテンツを取得して「RESPONSE」に追加することはできません

それができる方法を教えてください。

御時間ありがとうございます。

4

1 に答える 1

0

Define a RESTAPI and based on GET/PUT pull or post data to your server.

于 2013-07-31T12:56:25.730 に答える