我正在尝试使用在登录调用期间返回的相同JSESSIONID在NetSuite中添加记录。我从cookie头中获取了JESSIONID值,并将其设置为JSESSIONID的出站属性。然后我正在使用Web Service Consumer进行添加操作。但我收到的错误是无效的会话ID。 关于如何在后续NetSuite调用中使用相同会话ID的任何想法。
<set-property propertyName="JSESSIONID" value="#[flowVars.sessionID]" doc:name="Property"/>
<set-payload value=" <urn:add xmlns:urn="urn:messages_2017_1.platform.webservices.netsuite.com" xmlns:urn1="urn:core_2017_1.platform.webservices.netsuite.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:list="urn:relationships_2017_1.lists.webservices.netsuite.com">
<urn:record xsi:type="list:Customer">
<list:companyName>ABC</list:companyName>
<list:subsidiary internalId="1"/>
</urn:record>
</urn:add>" doc:name="Set Payload"/>
<ws:consumer config-ref="Web_Service_Consumer" operation="add" doc:name="Web Service Consumer"/>
答案 0 :(得分:0)
要保持或维护应用程序状态/会话,您可以利用Mule中的Object store。 您可以将特定用户的JSESSIONID / JSESSIONID映射存储在对象库中,并在后续请求中使用它。 会话丢失/超时后删除它们。 尝试探索以下链接
答案 1 :(得分:0)
您可以在某个标头中添加消息或使用会话ID,因为在后续的HTTP或Web服务调用之后它可能会丢失。