Esta é a documentação da Apigee e da Apigee híbrida.
Confira a documentação da Apigee Edge.
InvalidIndex
Mensagem de erro
A implantação do proxy de API por meio da IU da Apigee ou da API falha com esta mensagem de erro:
Error Saving Revision revision_number Invalid index index in KeyValueMapStepDefinition policy_name.
Exemplo de mensagem de erro
Error Saving Revision 2
Invalid index 0 in KeyValueMapStepDefinition GetKVM.
Captura de tela com erro de exemplo

Causa
Se o atributo index especificado no elemento <Get> de uma política de operações do mapa de chave-valor for zero ou um número negativo, a implantação do proxy da API falhará. O índice começa em 1, portanto, um índice de zero ou inteiro negativo é considerado inválido.
Por exemplo, se o index especificado for 0 no elemento <Get> de uma política de operações de mapa de chave-valor, a implantação do proxy de API falhará.
Diagnóstico
Identifique a política de operações de mapa de chave-valor em que o erro ocorreu e o índice inválido. Você encontra essas informações na mensagem de erro. Por exemplo, no erro a seguir, o nome da política é
GetKVMe o índice inválido é0:Invalid index 0 in KeyValueMapStepDefinition GetKVM.Verifique se o valor do índice especificado no elemento
<Get>da política de operações de mapa de chave-valor falhou corresponde ao valor identificado na mensagem de erro (etapa 1 acima). Por exemplo, a política a seguir especifica o valor do índice como0, que corresponde ao que está na mensagem de erro:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <KeyValueMapOperations mapIdentifier="FooKVM" async="false" continueOnError="false" enabled="true" name="GetKVM"> <DisplayName>GetKVM</DisplayName> <ExpiryTimeInSecs>86400</ExpiryTimeInSecs> <Scope>environment</Scope> <Get assignTo="foo_variable" index="0"> <Key> <Parameter>FooKey_1</Parameter> </Key> </Get> </KeyValueMapOperations>Se o índice especificado for zero ou um número inteiro negativo, essa é a causa do erro.
No exemplo mostrado acima, o valor do índice é
0, que é inválido. Portanto, a implantação do proxy de API falha com o erro:Invalid index 0 in KeyValueMapStepDefinition GetKVM.
Resolução
Verifique se o atributo de índice especificado no elemento <Get> da política de operações de mapa de chave-valor é válido (e não zero ou um número inteiro negativo).
Para corrigir o exemplo de política mostrado acima, você pode modificar o índice para 1.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<KeyValueMapOperations mapIdentifier="FooKVM" async="false" continueOnError="false" enabled="true" name="GetKVM">
<DisplayName>GetKVM</DisplayName>
<ExpiryTimeInSecs>86400</ExpiryTimeInSecs>
<Scope>environment</Scope>
<Get assignTo="foo_variable" index="1">
<Key>
<Parameter>FooKey_1</Parameter>
</Key>
</Get>
</KeyValueMapOperations>
KeyIsMissing
Mensagem de erro
A implantação do proxy de API por meio da IU da Apigee ou da API falha com esta mensagem de erro:
Error Saving Revision revision_number Error occurred while validation of bean policy_name.xml Reason: - Non null value expected for element Parameter in Entry.
Exemplo de mensagem de erro
Error Saving Revision 3
Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in Entry
Captura de tela com erro de exemplo

Causa
Esse erro ocorrerá se o elemento <Key> estiver completamente ausente ou o elemento <Parameter> estiver ausente no elemento <Key> abaixo de <Entry> do elemento <InitialEntries> da política de operações do mapa de chave-valor.
Diagnóstico
Identifique a política de operações do mapa de chave-valor em que o erro ocorreu. Você encontra essas informações na mensagem de erro. Por exemplo, no erro a seguir, o nome da política de operações do mapa de chave-valor é
GetKVM.Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in EntryNa política com falha, verifique se há algum elemento
<Entry>que tenha um elemento<Key>ou<Parameter>ausente abaixo de<InitialEntries>.Veja uma amostra de política de operações de mapa de chave-valor que não tem o elemento
<Parameter>no elemento<Key>:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <KeyValueMapOperations async="false" continueOnError="false" enabled="true" name="GetKVM" mapIdentifier="FooKVM"> <DisplayName>GetKVM</DisplayName> <Properties/> <ExclusiveCache>false</ExclusiveCache> <ExpiryTimeInSecs>300</ExpiryTimeInSecs> <InitialEntries> <Entry> <Key/> <Value>v1</Value> </Entry> <Entry> <Key> <Parameter>k2</Parameter> </Key> <Value>v2</Value> </Entry> </InitialEntries>Nesse caso, o primeiro elemento está causando o problema.
Resolução
Verifique se todos os elementos <Entry> abaixo do elemento <InitialEntries> na política de operações do mapa de chave-valor têm um elemento <Key> seguido por um elemento <Parameter>.
Para corrigir a política de exemplo mostrada acima, adicionar um elemento <Parameter> resolve o problema:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<KeyValueMapOperations async="false" continueOnError="false" enabled="true" name="GetKVM" mapIdentifier="FooKVM">
<DisplayName>GetKVM</DisplayName>
<Properties/>
<ExclusiveCache>false</ExclusiveCache>
<ExpiryTimeInSecs>300</ExpiryTimeInSecs>
<InitialEntries>
<Entry>
<Key>
<Parameter>k1</Parameter>
</Key>
<Value>v1</Value>
</Entry>
<Entry>
<Key>
<Parameter>k2</Parameter>
</Key>
<Value>v2</Value>
</Entry>
</InitialEntries>
...
ValueIsMissing
Mensagem de erro
A implantação do proxy de API por meio da IU da Apigee ou da API falha com esta mensagem de erro:
Error Saving Revision revision_number Error occurred while validation of bean policy_name.xml. Reason: - Non null value expected for element Value in Entry.
Exemplo de mensagem de erro
Error Saving Revision 3
Error occurred while validation of bean GetKVM.xml.Reason: - Non null value expected for element Value in Entry
Captura de tela com erro de exemplo

Causa
Esse erro ocorrerá se o elemento <Value> abaixo do elemento <Entry> do elemento <InitialEntries> da política de operações do mapa de chave-valor estiver ausente.
Diagnóstico
Identifique a política de operações do mapa de chave-valor em que o erro ocorreu. Você encontra essas informações na mensagem de erro. Por exemplo, no erro a seguir, o nome da política de operações do mapa de chave-valor é
GetKVM.Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Value in EntryNa política de operações de mapa de chave-valor com falha, verifique se há algum elemento
<Entry>que não tenha um elemento<Value>abaixo do<InitialEntries>.Veja uma amostra de política de operações de mapa de chave-valor que não tem o elemento
<Value>:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <KeyValueMapOperations async="false" continueOnError="false" enabled="true" name="GetKVM" mapIdentifier="testNotEncrypte"> <DisplayName>GetKVM3</DisplayName> <Properties/> <ExclusiveCache>false</ExclusiveCache> <ExpiryTimeInSecs>300</ExpiryTimeInSecs> <InitialEntries> <Entry> <Key> <Parameter>k1</Parameter> </Key> </Entry> <Entry> <Key> <Parameter>k2</Parameter> </Key> <Value>v2</Value> </Entry> </InitialEntries> ...
Resolução
Verifique se todos os elementos <Entry> abaixo do elemento <InitialEntries> na política de operações de mapa de chave-valor têm um elemento <Value>.
Para corrigir a política de exemplo mostrada acima, adicionar um elemento <Value> resolve o problema:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<KeyValueMapOperations async="false" continueOnError="false" enabled="true" name="GetKVM" mapIdentifier="testNotEncrypte">
<DisplayName>GetKVM3</DisplayName>
<Properties/>
<ExclusiveCache>false</ExclusiveCache>
<ExpiryTimeInSecs>300</ExpiryTimeInSecs>
<InitialEntries>
<Entry>
<Key>
<Parameter>k1</Parameter>
</Key>
<Value>v1</Value>
</Entry>
<Entry>
<Key>
<Parameter>k2</Parameter>
</Key>
<Value>v2</Value>
</Entry>
</InitialEntries>
...