Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
InvalidIndex
Hata Mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması şu hata mesajını gösterir:
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
Anahtar/Değer Eşleme İş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 tam sayı içeren bir dizin geçersiz olarak kabul edilir.
Örneğin, Anahtar/Değer Eşlemesi İşlemleri politikasının <Get>
öğesinde belirtilen index
değeri 0
ise API proxy'sinin dağıtımı başarısız olur.
Teşhis
Hatanın oluştuğu Anahtar/Değer Eşleme İşlemleri politikasını ve geçersiz dizini tanımlayın. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada politika adı
GetKVM
, geçersiz dizin ise0
şeklindedir:Invalid index 0 in KeyValueMapStepDefinition GetKVM.
Başarısız Anahtar/Değer Eşleme İşlemleri politikasının
<Get>
öğesinde belirtilen dizin değerinin, hata mesajında tanımlanan değerle eşleştiğini doğrulayın (yukarıdaki 1. adım). Örneğin, aşağıdaki politika, dizin değerini hata mesajındaki değerle eşleşen0
olarak belirtir:<?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 tam sayıysa hatanın nedeni budur.
Yukarıda gösterilen örnek Anahtar/Değer Eşleme İşlemleri politikasında dizin değeri geçersiz olan
0
şeklindedir. 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 İşlemleri politikasının <Get>
öğesinde belirtilen dizin özelliğinin geçerli olduğundan (sıfır olmayan veya negatif tam sayı) emin olun.
Yukarıda gösterilen örnek Anahtar/Değer Eşleme İş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 üzerinden dağıtılması şu hata mesajını gösterir:
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 yoksa veya <Parameter>
öğesi tamamen eksikse ortaya çıkar
öğesi, <InitialEntries>
öğesinin <Entry>
altındaki <Key>
öğesinde eksik
öğesi.
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 Eşleme İşlemleri politikasının adı
GetKVM
şeklindedir.Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in Entry
Başarısız Anahtar/Değer Eşleme İşlemleri politikasında herhangi bir
<Entry>
olup olmadığını kontrol edin. öğesi için,<InitialEntries>
altında eksik<Key>
veya<Parameter>
öğesi bulunmalıdır.Aşağıda,
<Parameter>
içermeyen bir Temel Değer Eşleme İşlemleri politikası örneği verilmiştir<Key>
öğesi içinde bir öğe oluşturun:<?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 ilk öğe neden olmaktadır.
Çözünürlük
Temel Değer Eşleme İşlemleri politikasında <InitialEntries>
öğesinin altında bulunan tüm <Entry>
öğelerinde bir <Key>
öğesi ve ardından bir <Parameter>
öğesi bulunduğundan emin olun.
Yukarıda gösterilen örnek Anahtar/Değer Eşleme İşlemleri politikasını düzeltmek için bir <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 üzerinden dağıtılması şu hata mesajını gösterir:
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ğer Eşleme İşlemleri politikasındaki <InitialEntries>
öğesinin <Entry>
öğesinin altında <Value>
öğesi yoksa ortaya çıkar.
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 Eşleme İşlemleri politikasının adı
GetKVM
şeklindedir.Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Value in Entry
Başarısız Anahtar/Değer Eşleme İşlemleri politikasında,
<InitialEntries>
altında eksik<Value>
öğesi olan bir<Entry>
öğesi olup olmadığını kontrol edin.<Value>
öğesi eksik olan Temel Değer Eşleme İşlemleri politikası örneğini aşağıda bulabilirsiniz:<?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
Temel Değer Eşleme İşlemleri politikasında <InitialEntries>
öğesinin altında bulunan tüm <Entry>
öğelerinde <Value>
öğesi bulunduğundan emin olun.
Yukarıda gösterilen örnek Anahtar/Değer Eşleme İşlemleri politikasını düzeltmek için bir <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>
...