SharedFlowNotFound
エラーコード
flow.SharedFlowNotFound
エラー レスポンスの本文
{ "fault": { "faultstring": "Shared Flow shared_flow_name Not Found", "detail": { "errorcode": "flow.SharedFlowNotFound" } } }
考えられる原因
このエラーには、次の原因が考えられます。
原因 | 説明 |
共有フローが利用可能でない | 共有フローが存在しません。 |
共有フローがデプロイされていない | 共有フローは存在しますが、デプロイされていません。 |
原因: 共有フローが利用可能でない
Flow Callout ポリシー内の <SharedFlowBundle>
要素で定義されている共有フローが環境内に存在しない場合、このエラーが発生します。
たとえば、Flow Callout ポリシー内の <SharedFlowBundle>
要素で SharedFlow_Sample
という名前の共有フローが指定されている場合、この共有フローが環境内に存在しなければ、このエラーが発生します。
エラー メッセージの例
{
"fault": {
"faultstring": "Shared Flow SharedFlow_Sample Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
診断
存在しない共有フローを特定します。それには、エラー レスポンスの
faultstring
要素の内容を調べます。たとえば、次のfaultstring
では共有フローの名前がSharedFlow_Sample
となっています。"faultstring": "Shared Flow SharedFlow_Sample Not Found"
エラーが発生した特定の API プロキシで、すべての Flow Callout ポリシーを調べます。上記のステップ 1 で特定したフロー名が指定されている
<SharedFlowBundle>
要素を含む Flow Callout ポリシーがあるかどうか確認します。たとえば、次のポリシーでは
<SharedFlowBundle>
をSharedFlow_Sample
として指定しています。これは、エラー文字列に含まれている名前と一致します。<FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout"> <DisplayName>Auth Flow Callout</DisplayName> <SharedFlowBundle>SharedFlow_Sample</SharedFlowBundle> </FlowCallout>
Edge UI で [APIs] > [Shared Flows] に移動し、この共有フローが存在するかどうか確認します。存在する場合、それがこのエラーの原因です(新しい Edge UI では、[開発] タブで共有フローを確認できます)。
たとえば、次に示すスクリーンショットでは、共有フロー
SharedFlow_Sample
が存在していません。この共有フローが存在しないことから、次のエラーコードを受け取ります。
flow.SharedFlowNotFound
解決策
API リクエストを実行する特定の環境内に、Flow Callout ポリシー内の <SharedFlowBundle>
要素で指定されている共有フローが存在し、デプロイされていることを確認します。
この問題に対処するには、次のいずれかの方法を選択できます。
以下に示す
SharedFlow_Sample
という名前の共有フローを作成し、その共有フローを以下に示すテスト環境にデプロイします。テスト環境にデプロイされている既存の共有フローを Flow Callout ポリシー内で使用します。たとえば、Flow Callout ポリシー内で SharedFlow_demo を指定できます。
<FlowCallout async="false" continueOnError="false" enabled="true" name="Auth-Flow-Callout"> <DisplayName>Auth Flow Callout</DisplayName> <SharedFlowBundle>SharedFlow_demo</SharedFlowBundle> </FlowCallout>
Flow Callout ポリシーはテスト環境にもデプロイされているため、テスト環境に対して API 呼び出しを行うと、エラーは表示されないはずです。
原因: 共有フローがデプロイされていない
Flow Callout ポリシー内の <SharedFlowBundle>
要素で指定されている共有フローがデプロイされていない場合、このエラーが発生します。
たとえば、Flow Callout ポリシー内の <SharedFlowBundle>
要素で SharedFlow_example
という名前の共有フローが指定されている場合、API リクエストを実行する特定の環境内にこの共有フローがデプロイされていなければ、このエラーが発生します。
エラー メッセージの例
{
"fault": {
"faultstring": "Shared Flow Shared-Flow_example Not Found",
"detail": {
"errorcode": "flow.SharedFlowNotFound"
}
}
}
診断
デプロイされていない共有フローを特定します。それには、エラー レスポンスの
faultstring
要素の内容を調べます。たとえば、次のfaultstring
では共有フローの名前がShared-Flow_example
となっています。"faultstring": "Shared Flow Shared-Flow_example Not Found"
Edge UI で、この共有フローがデプロイされているかどうか確認します。
たとえば、以下のスクリーンショットを見ると、共有フロー
SharedFlow_example
は存在するものの、デプロイされていないことがわかります。この共有フローはデプロイされていないため、次のエラーコードを受け取ります。
flow.SharedFlowNotFound
解決策
API リクエストを実行する特定の環境内に、Flow Callout ポリシー内の <SharedFlowBundle>
要素で指定されている共有フローが存在し、デプロイされていることを確認します。
上記の例を修正する場合は、以下に示すように SharedFlow_example
という名前の共有フローをテスト環境にデプロイします。
Flow Callout ポリシーはテスト環境にもデプロイされているため、テスト環境に対して API 呼び出しを行うと、エラーは表示されないはずです。