如何在 Oracle SOA 12c 中获取 transform activity 中的 flowId

How to get flowId in transform activity in Oracle SOA 12c

Oracle 12c 我们有流 ID 方法来跟踪服务请求。在 assign activity 中,我可以使用 ora:getFlowId() 方法获取流 ID,但在 transform activity 中,我看不到这种方法。所以,我的问题是如何在 transform activity ?.

中获取此流 ID

在您的转换中为流 ID 分配一个硬代码值。转换后只有一个赋值,其中用函数覆盖已经填充的流 ID。这应该可以解决问题。

没有特定的函数可以在转换中得到相同的。

考虑这样的事情。将 ora:getFlowId() 作为参数传递给 xquery,然后将其分配到您想要的任何位置。

xquery version "1.0" encoding "utf-8";

(:: OracleAnnotationVersion "1.0" ::)

declare variable $flowId as xs:string external;

declare function local:func($flowId as xs:string)
                             as element() {

  <result>
  {$flowId}
  </result>

};

local:func($flowId as xs:string)

这可能无法回答您直接获取 flowId 的问题。但这可能是解决您的问题的方法。

希望对您有所帮助