Apigee X のドキュメントが表示されています。
Apigee Edge のドキュメントを表示する。
UnresolvedVariable
エラーコード
steps.httpmodifier.UnresolvedVariable
エラー レスポンスの本文
{ "fault": { "faultstring": "HTTPModifier[policy_name]: unable to resolve variable [variable_name]", "detail": { "errorcode": "steps.httpmodifier.UnresolvedVariable" } } }
原因
このエラーは、HTTPModifier ポリシーで指定された変数が次のいずれかの場合に発生します。
- 範囲外(ポリシーが実行されている特定のフローで使用できない)
- 解決できない(定義されていない)
診断
エラーが発生した HTTPModifier ポリシーと、使用できない変数の名前を特定します。どちらの項目もエラー レスポンスの
faultstring
要素にあります。たとえば、次の
faultstring
では、googleBook
がポリシー名、var
が変数です。"faultstring": "HTTPModifier[googleBook]: unable to resolve variable var"
失敗した HTTPModifier ポリシーの XML で、使用されている変数名が、障害文字列内で特定された変数名(上記のステップ 1)と一致していることを確認します。
変数が定義されていて、HTTPModifier ポリシーが実行されているフローで使用できるかどうかを確認します。
変数が次のいずれかの状態になっていないか確認します。
- 範囲外(ポリシーが実行されている特定のフローで使用できない)
- 解決できない(定義されていない)
いずれかの状態が当てはまる場合、それがエラーの原因です。
リクエスト フローの HTTPModifier ポリシーの前に実行されるポリシーに変数が定義されているかどうかを確認します。この変数が定義されていない場合は、次のようなエラーコードが表示されます。
steps.httpmodifier.UnresolvedVariable
解決策
ポリシーで参照される変数があり、HTTPModifier ポリシーが実行されている特定のフローで使用できることを確認します。