2016-07-03 6 views
0

解決方法を知らない問題があります。私はWSB2 ESB 4.9.0です。トピックイベントをパブリッシュ/トリガーしてデータを渡すプロキシサービスを作成

イベントを使用してプロキシを使用してトピックを呼び出そうとしています。しかし、これは決してそれに加入しているプロキシを呼び出すことはありません。

<?xml version="1.0" encoding="UTF-8"?> 
<proxy name="publishSubscribeTest" startOnLoad="true" trace="disable" 
    transports="http https" xmlns="http://ws.apache.org/ns/synapse"> 
    <target> 
    <inSequence> 
     <log level="custom"> 
     <property value="********************* START METHOD *********************" name="publishSubscribeTest"/> 
     </log> 

     <event topic="TestTopic"/> 

     <log level="custom"> 
     <property value="********************* END METHOD *********************" name="publishSubscribeTest"/> 
     </log> 
    </inSequence> 
    <outSequence> 
     <drop/> 
    </outSequence> 
    <faultSequence/> 
    </target> 
</proxy> 

トピックには次の詳細があります

Topic Name: TestTopic 
Permissions Details: (Everyone has permission to subscribe and publish) 
WS Subscription Details: Another custom proxy in WSO2 has been configured as WS Subscription Details. 

最初のプロキシが話題を呼び出したときに、それはそのトピックにサブスクライブし、プロキシを呼び出す必要があります。しかしそれは決して呼び出されません。

これは、トピックごとに呼び出されるプロキシです:

<?xml version="1.0" encoding="UTF-8"?> 
<proxy name="proxyCalledByTopic" startOnLoad="true" trace="disable" 
    transports="https http" xmlns="http://ws.apache.org/ns/synapse"> 
    <target> 
    <inSequence> 
     <log level="custom"> 
     <property value="********************* START METHOD *********************" name="proxyCalledByTopic"/> 
     </log> 
    </inSequence> 
    <outSequence> 
     <send/> 
    </outSequence> 
    <faultSequence/> 
    </target> 
</proxy> 

ので、ログのようなものでなければなりません:

publishSubscribeTest = *************** ****** END METHOD ******************** proxyCalledByTopic = ****************** ***開始メソッド******************* publishSubscribeTest = *********************開始方法*******************

は、しかし、それは次のようである:

publishSubscribeTest = ********************* END方法 ********** *********** publishSubscribeTest = ********************開始メソッド************** *******

私はサブスクリプションのトピックで呼び出されたプロキシは呼び出されないことを理解しています。

提案がありますか?どんな助け?

答えて

0

いくつかの試行のあと、pubサブがイベントを引き起こさなかった理由は、content-typeヘッダーのニーズがプロキシサービスへの着信要求から適切に設定されていなかったためです。 POST apiを設定することでも同じことができます。

コンテンツタイプのヘッダーに次のいずれかの値が入力されると、pub/subイベントが機能し始めました。

Content-Type: application/json 
Content-Type: application/xml 

サンプル記事: XML

POST /TriggerTopic HTTP/1.1 
Host: 10.224.234.34:8280 
Content-Type: application/xml 
Cache-Control: no-cache 
Postman-Token: f60c206c-a38e-ed2d-46a0-b051304247be 

<?xml version="1.0" encoding="UTF-8"?> 
<note> 
<to>Tove</to> 
<from>Jani</from> 
<heading>Reminder</heading> 
<body>Dont forget me this weekend from postman via API</body> 
</note> 

サンプルポストJSON

POST /TriggerTopic HTTP/1.1 
Host: 10.224.234.34:8280 
Content-Type: application/json 
Cache-Control: no-cache 
Postman-Token: 3453ddc5-a279-203a-fecf-38e81bd3ba8b 

{"value":"some value"} 
関連する問題