現在、Apigee と Apigee ハイブリッドのドキュメントを表示しています。
Apigee Edge のドキュメントを表示する
InvalidEmptyElement
エラー メッセージ
Apigee UI または API を使用した API プロキシのデプロイに失敗すると、次のエラー メッセージが表示されます。
Error Saving Revision Invalid empty element : policy(policy_name) element(Source)
エラー メッセージの例
Error Saving Revision
Invalid empty element : policy(Decode_JWT) element(Source).
スクリーンショットの例
Apigee UI に、エラーを示すダイアログ ボックスが表示されます。
原因
このエラーは、デコードされる JWT が含まれるフロー変数が、DecodeJWT ポリシーの <Source>
要素で指定されていない場合に発生します。
たとえば、<Source>
要素に値が含まれていない場合、次のようなエラーが発生します。
<Source></Source>
診断
DecodeJWT ポリシーの名前と、エラー メッセージから空の要素の名前を特定します。たとえば、次のエラー メッセージでは、DecodeJWT ポリシーの名前は
Decode_JWT
、要素名はSource
です。Invalid empty element : policy(Decode_JWT) element(Source).
DecodeJWT ポリシーを調べて、ステップ 1 で特定した要素が空かどうかを確認します。要素が空の場合は、それがエラーの原因です。
DecodeJWT ポリシーの例を次に示します。
<DecodeJWT name="Decode_JWT"> <DisplayName>JWT Decode HS256</DisplayName> <Source></Source> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> </DecodeJWT>
<Source>
要素が空であるため、次のエラーが発生します。Invalid empty element : policy(Decode_JWT) element(Source).
解決策
<Source>
要素のフロー変数に有効な JWT が指定されていることを確認します。
サンプルの DecodeJWT ポリシーの問題を修正するには、有効な JWT が含まれるフロー変数を <Source>
要素に指定します。
<DecodeJWT name="Decode_JWT">
<DisplayName>JWT Decode HS256</DisplayName>
<Source>var.jwt</Source>
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
</DecodeJWT>