Pemecahan masalah error deployment kebijakan Operasi Peta Nilai Kunci

Anda sedang melihat dokumentasi Apigee dan Apigee Hybrid.
Lihat dokumentasi Apigee Edge.

InvalidIndex

Pesan Kesalahan

Deployment proxy API melalui UI atau API Apigee gagal dengan pesan error ini:

Error Saving Revision revision_number
Invalid index index in KeyValueMapStepDefinition policy_name.

Contoh Pesan Error

Error Saving Revision 2
Invalid index 0 in KeyValueMapStepDefinition GetKVM.

Contoh Screenshot Error

Terjadi error saat menyimpan revisi 2.

Penyebab

Jika atribut index yang ditentukan dalam elemen <Get> kebijakan Operasi Peta Nilai Kunci nol atau angka negatif, deployment proxy API akan gagal. Indeks dimulai dari 1, sehingga indeks nol atau bilangan bulat negatif dianggap tidak valid.

Misalnya, jika index yang ditentukan adalah 0 dalam elemen <Get> pada kebijakan Operasi Peta Nilai Kunci, deployment proxy API akan gagal.

Diagnosis

  1. Identifikasi kebijakan Operasi Peta Nilai Kunci tempat error terjadi dan indeks yang tidak valid. Anda dapat menemukan informasi ini dari pesan error. Misalnya, dalam error berikut, nama kebijakan adalah GetKVM dan indeks yang tidak valid adalah 0:

    Invalid index 0 in KeyValueMapStepDefinition GetKVM.

  2. Pastikan nilai indeks yang ditentukan dalam elemen <Get> dari kebijakan Operasi Peta Nilai Kunci yang gagal cocok dengan nilai yang diidentifikasi dalam pesan error (langkah #1 di atas). Misalnya, kebijakan berikut menentukan nilai indeks sebagai 0, yang cocok dengan yang ada dalam pesan error:

    <?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>
    
  3. Jika indeks yang ditentukan adalah bilangan bulat nol atau negatif, maka itulah penyebab error.

    Pada contoh kebijakan Operasi Peta Nilai Kunci yang ditampilkan di atas, nilai indeks adalah 0, yang tidak valid. Oleh karena itu, deployment Proxy API gagal dengan error:

    Invalid index 0 in KeyValueMapStepDefinition GetKVM.
    

Resolusi

Pastikan atribut indeks yang ditentukan dalam elemen <Get> kebijakan Operasi Peta Nilai Kunci valid (bukan nol atau bilangan bulat negatif).

Untuk memperbaiki contoh kebijakan Operasi Peta Nilai Kunci yang ditampilkan di atas, Anda dapat mengubah indeks menjadi 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

Pesan Kesalahan

Deployment proxy API melalui UI atau API Apigee gagal dengan pesan error ini:

Error Saving Revision revision_number
Error occurred while validation of bean policy_name.xml
Reason: - Non null value expected for element Parameter in Entry.

Contoh Pesan Error

Error Saving Revision 3
Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in Entry

Contoh Screenshot Error

Terjadi error saat menyimpan revisi 3.

Penyebab

Error ini terjadi jika elemen <Key> sama sekali tidak ada atau elemen <Parameter> tidak ada dalam elemen <Key> di bawah <Entry> elemen <InitialEntries> kebijakan Operasi Peta Nilai Kunci.

Diagnosis

  1. Identifikasi kebijakan Operasi Peta Nilai Kunci tempat error terjadi. Anda dapat menemukan informasi ini dari pesan error. Misalnya, dalam error berikut, nama kebijakan Operasi Peta Nilai Kunci adalah GetKVM.

    Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in Entry
    
  2. Dalam kebijakan Operasi Peta Nilai Kunci yang gagal, periksa apakah ada elemen <Entry> yang tidak memiliki elemen <Key> atau <Parameter> di bawah <InitialEntries>.

    Berikut adalah contoh kebijakan Operasi Peta Nilai Kunci yang tidak memiliki elemen <Parameter> dalam elemen <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>
    

    Dalam hal ini elemen pertama yang menyebabkan masalah.

Resolusi

Pastikan semua elemen <Entry> di bawah elemen <InitialEntries> dalam kebijakan Operasi Peta Nilai Kunci memiliki elemen <Key> yang diikuti dengan elemen <Parameter>.

Untuk memperbaiki contoh kebijakan Operasi Peta Nilai Kunci yang ditampilkan di atas, menambahkan elemen <Parameter> akan menyelesaikan masalah:

<?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

Pesan Kesalahan

Deployment proxy API melalui UI atau API Apigee gagal dengan pesan error ini:

Error Saving Revision revision_number
Error occurred while validation of bean policy_name.xml. Reason: - Non null value expected for element Value in Entry.

Contoh Pesan Error

Error Saving Revision 3
Error occurred while validation of bean GetKVM.xml.Reason: - Non null value expected for element Value in Entry

Contoh Screenshot Error

Terjadi error saat menyimpan revisi 3.

Penyebab

Error ini terjadi jika elemen <Value> tidak ada di bawah elemen <Entry> dari elemen <InitialEntries> kebijakan Operasi Peta Nilai Kunci.

Diagnosis

  1. Identifikasi kebijakan Operasi Peta Nilai Kunci tempat error terjadi. Anda dapat menemukan informasi ini dari pesan error. Misalnya, dalam error berikut, nama kebijakan Operasi Peta Nilai Kunci adalah GetKVM.

    Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Value in Entry
    
  2. Dalam kebijakan Operasi Peta Nilai Kunci yang gagal, periksa apakah ada elemen <Entry> yang tidak memiliki elemen <Value> di bawah <InitialEntries>.

    Berikut adalah contoh kebijakan Operasi Peta Nilai Kunci yang tidak memiliki elemen <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>
        ...
    
    

Resolusi

Pastikan semua elemen <Entry> di bawah elemen <InitialEntries> dalam kebijakan Operasi Peta Nilai Kunci memiliki elemen <Value>.

Untuk memperbaiki contoh kebijakan Operasi Peta Nilai Kunci yang ditampilkan di atas, menambahkan elemen <Value> akan menyelesaikan masalah:

<?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>
    ...