2017-11-13 5 views
0

ログインコール中に返されたのと同じJSESSIONIDを使用してNetSuiteにレコードを追加しようとしています。私は、CookieヘッダーからJESSIONID値を取り出し、JSESSIONIDのアウトバウンドプロパティとして設定しました。そして、私はWebサービスコンシューマーを使って操作を追加しています。しかし、無効なセッションIDとしてエラーが発生しています。 その後のNetSuiteの呼び出しで同じセッションIDを使用する方法に関するアイデア。mule:Webサービスコンシューマでセッションを維持する方法

<set-property propertyName="JSESSIONID" value="#[flowVars.sessionID]" doc:name="Property"/> 
     <set-payload value=" &lt;urn:add xmlns:urn=&quot;urn:messages_2017_1.platform.webservices.netsuite.com&quot; xmlns:urn1=&quot;urn:core_2017_1.platform.webservices.netsuite.com&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:list=&quot;urn:relationships_2017_1.lists.webservices.netsuite.com&quot;&gt; 
     &lt;urn:record xsi:type=&quot;list:Customer&quot;&gt; 
       &lt;list:companyName&gt;ABC&lt;/list:companyName&gt; 
       &lt;list:subsidiary internalId=&quot;1&quot;/&gt; 
     &lt;/urn:record&gt; 
&lt;/urn:add&gt;" doc:name="Set Payload"/> 
     <ws:consumer config-ref="Web_Service_Consumer" operation="add" doc:name="Web Service Consumer"/> 

答えて

0

アプリケーションの状態/セッションを維持または維持するには、Muleのオブジェクトストアを利用できます。 オブジェクトストアに特定のユーザーのJSESSIONID/JSESSIONIDのマップを格納し、後続の要求で使用することができます。 セッションが失われたりタイムアウトしたりすると、それらを削除します。 以下探検してみますと、それは、その後のHTTPまたはWebサービス呼び出しの後に失われることがありますので、あなたがメッセージenricherを持っているか、いくつかのヘッダにセッションIDを持つことができます

Managing Application Data Storage with Object Stores

Object Store Connector

0

をリンクします。

関連する問題