Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
InvalidIndex
Hata Mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Invalid index index in KeyValueMapStepDefinition policy_name.
Örnek hata mesajı
Error Saving Revision 2
Invalid index 0 in KeyValueMapStepDefinition GetKVM.
Örnek hata ekran görüntüsü

Neden
Bir Anahtar/Değer Çifti Haritası İşlemleri politikasının <Get> öğesinde belirtilen index özelliği sıfır veya negatif bir sayıysa API proxy'sinin dağıtımı başarısız olur. Dizin 1 ile başlar. Bu nedenle sıfır veya negatif tamsayı dizinleri geçersiz kabul edilir.
Örneğin, bir Anahtar Değer Haritası İşlemleri politikasının <Get> öğesinde index0 belirtilmişse API proxy'sinin dağıtımı başarısız olur.
Teşhis
Hataya neden olan Anahtar/Değer Eşlemesi İşlemleri politikasını ve geçersiz dizini belirleyin. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada politika adı
GetKVM, geçersiz dizin ise0'dir:Invalid index 0 in KeyValueMapStepDefinition GetKVM.Başarısız olan Key Value Map Operations politikasının
<Get>öğesinde belirtilen dizin değerinin, hata mesajında tanımlanan değerle (yukarıdaki 1. adım) eşleştiğini doğrulayın. Örneğin, aşağıdaki politika dizinin değerini0olarak belirtir. Bu değer, hata mesajındaki değerle eşleşir:<?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>Belirtilen dizin sıfır veya negatif bir tamsayıysa hatanın nedeni budur.
Yukarıda gösterilen örnek Anahtar/Değer Çifti Haritası İşlemleri politikasında, dizinin değeri
0'dır ve bu değer geçersizdir. Bu nedenle, API proxy'sinin dağıtımı şu hatayla başarısız olur:Invalid index 0 in KeyValueMapStepDefinition GetKVM.
Çözünürlük
Anahtar/değer eşleme işlemleri politikasının <Get> öğesinde belirtilen dizin özelliğinin geçerli (sıfır olmayan veya negatif tam sayı) olduğundan emin olun.
Yukarıda gösterilen örnek Anahtar Değer Haritası İşlemleri politikasını düzeltmek için dizini 1 olarak değiştirebilirsiniz.
<?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
Hata Mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Error occurred while validation of bean policy_name.xml Reason: - Non null value expected for element Parameter in Entry.
Örnek hata mesajı
Error Saving Revision 3
Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in Entry
Örnek hata ekran görüntüsü

Neden
Bu hata, <Key> öğesi tamamen eksikse veya Anahtar Değeri Haritası İşlemleri politikasının <InitialEntries> öğesinin <Entry> altındaki <Key> öğesinde <Parameter> öğesi eksikse oluşur.
Teşhis
Hatanın oluştuğu Anahtar/Değer Eşlemesi İşlemleri politikasını belirleyin. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada Anahtar/Değer Haritası İşlemleri politikasının adı
GetKVM'dır.Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in EntryBaşarısız olan Anahtar Değer Eşleme İşlemleri politikasında,
<Entry>öğesinin<InitialEntries>altında eksik bir<Key>veya<Parameter>öğesi olup olmadığını kontrol edin.Aşağıda,
<Key>öğesi içinde<Parameter>öğesi eksik olan örnek bir Anahtar/Değer Eşlemesi İşlemleri politikası verilmiştir:<?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>Bu durumda, soruna neden olan ilk öğedir.
Çözünürlük
Anahtar Değer Haritası İşlemleri politikasındaki <InitialEntries> öğesinin altındaki tüm <Entry> öğelerinde <Key> öğesi ve ardından <Parameter> öğesi bulunduğundan emin olun.
Yukarıda gösterilen örnek Anahtar Değeri Haritası İşlemleri politikasını düzeltmek için <Parameter> öğesi eklemek sorunu çözer:
<?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
Hata Mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtımı şu hata mesajıyla başarısız oluyor:
Error Saving Revision revision_number Error occurred while validation of bean policy_name.xml. Reason: - Non null value expected for element Value in Entry.
Örnek hata mesajı
Error Saving Revision 3
Error occurred while validation of bean GetKVM.xml.Reason: - Non null value expected for element Value in Entry
Örnek hata ekran görüntüsü

Neden
Bu hata, Anahtar Değeri Eşleme İşlemleri politikasının <InitialEntries> öğesinin <Entry> öğesinin altında <Value> öğesi eksikse oluşur.
Teşhis
Hatanın oluştuğu Anahtar/Değer Eşlemesi İşlemleri politikasını belirleyin. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada Anahtar/Değer Haritası İşlemleri politikasının adı
GetKVM'dır.Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Value in EntryBaşarısız olan Anahtar Değer Eşleme İşlemleri politikasında,
<InitialEntries>öğesinin altında<Value>öğesi eksik olan bir<Entry>öğesi olup olmadığını kontrol edin.Aşağıda,
<Value>öğesi eksik olan örnek bir Anahtar/Değer Eşlemesi İşlemleri politikası verilmiştir:<?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> ...
Çözünürlük
Anahtar Değer Haritası İşlemleri politikasındaki <InitialEntries> öğesinin altındaki tüm <Entry> öğelerinin <Value> öğesi içerdiğinden emin olun.
Yukarıda gösterilen örnek Anahtar Değeri Haritası İşlemleri politikasını düzeltmek için <Value> öğesi eklemek sorunu çözer:
<?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>
...