'अहम वैल्यू' पर 'मैप ऑपरेशन' की नीति के डिप्लॉयमेंट से जुड़ी गड़बड़ी को हल करना

Apigee Edge का दस्तावेज़ देखा जा रहा है.
Go to the Apigee X documentation.
info

InvalidIndex

गड़बड़ी का मैसेज

Edge यूज़र इंटरफ़ेस (यूआई) या Edge मैनेजमेंट एपीआई की मदद से, एपीआई प्रॉक्सी को डिप्लॉय करने पर, यह गड़बड़ी का मैसेज दिखता है:

Error Saving Revision revision_number
Invalid index index in KeyValueMapStepDefinition policy_name.

गड़बड़ी के मैसेज का उदाहरण

Error Saving Revision 2
Invalid index 0 in KeyValueMapStepDefinition GetKVM.

गड़बड़ी के मैसेज वाले स्क्रीनशॉट का उदाहरण

वजह

अगर कुंजी-वैल्यू मैप के ऑपरेशन की नीति के <Get> एलिमेंट में बताया गया index एट्रिब्यूट, शून्य या कोई नेगेटिव नंबर है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता. इंडेक्स की गिनती 1 से शुरू होती है. इसलिए, शून्य या नेगेटिव पूर्णांक वाले इंडेक्स को अमान्य माना जाता है.

उदाहरण के लिए, अगर कुंजी-वैल्यू मैप के ऑपरेशन की नीति के <Get> एलिमेंट में बताया गया index, 0 है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.

संक्रमण की जांच

  1. कुंजी-वैल्यू मैप के ऑपरेशन की उस नीति की पहचान करें जिसमें गड़बड़ी हुई है. साथ ही, अमान्य इंडेक्स की पहचान करें. यह जानकारी, गड़बड़ी के मैसेज में मौजूद होती है. उदाहरण के लिए, यहां दी गई गड़बड़ी में, नीति का नाम GetKVM है और अमान्य इंडेक्स 0 है:

    Invalid index 0 in KeyValueMapStepDefinition GetKVM.

  2. पुष्टि करें कि कुंजी-वैल्यू मैप के ऑपरेशन की उस नीति के <Get> एलिमेंट में बताया गया इंडेक्स, गड़बड़ी के मैसेज में मौजूद इंडेक्स (ऊपर दिया गया पहला चरण) से मेल खाता है. उदाहरण के लिए, यहां दी गई नीति में इंडेक्स की वैल्यू 0 बताई गई है, जो गड़बड़ी के मैसेज में मौजूद वैल्यू से मेल खाती है:

    <?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. अगर इंडेक्स की वैल्यू शून्य या नेगेटिव पूर्णांक है, तो यह गड़बड़ी की वजह है.

    ऊपर दिखाई गई, कुंजी-वैल्यू मैप के ऑपरेशन की नीति के उदाहरण में, इंडेक्स की वैल्यू 0 है, जो अमान्य है. इसलिए, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता और यह गड़बड़ी दिखती है:

    Invalid index 0 in KeyValueMapStepDefinition GetKVM.
    

रिज़ॉल्यूशन

पक्का करें कि कुंजी-वैल्यू मैप के ऑपरेशन की नीति के <Get> एलिमेंट में बताया गया इंडेक्स एट्रिब्यूट मान्य हो. इसका मतलब है कि यह शून्य या नेगेटिव पूर्णांक नहीं होना चाहिए.

ऊपर दिखाई गई, कुंजी-वैल्यू मैप के ऑपरेशन की नीति के उदाहरण को ठीक करने के लिए, इंडेक्स को 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

गड़बड़ी का मैसेज

Edge यूज़र इंटरफ़ेस (यूआई) या Edge मैनेजमेंट एपीआई की मदद से, एपीआई प्रॉक्सी को डिप्लॉय करने पर, यह गड़बड़ी का मैसेज दिखता है:

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

गड़बड़ी के मैसेज का उदाहरण

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

गड़बड़ी के मैसेज वाले स्क्रीनशॉट का उदाहरण

वजह

यह गड़बड़ी तब होती है, जब कुंजी-वैल्यू मैप के ऑपरेशन की नीति के <InitialEntries> एलिमेंट के <Entry> में, <Key> एलिमेंट पूरी तरह से मौजूद न हो या <Key> एलिमेंट के अंदर <Parameter> एलिमेंट मौजूद न हो.

संक्रमण की जांच

  1. कुंजी-वैल्यू मैप के ऑपरेशन की उस नीति की पहचान करें जिसमें गड़बड़ी हुई है. यह जानकारी, गड़बड़ी के मैसेज में मौजूद होती है. उदाहरण के लिए, यहां दी गई गड़बड़ी में, कुंजी-वैल्यू मैप के ऑपरेशन की नीति का नाम GetKVM है.

    Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Parameter in Entry
    
  2. कुंजी-वैल्यू मैप के ऑपरेशन की उस नीति में देखें जिसमें गड़बड़ी हुई है कि क्या कोई ऐसा <Entry> एलिमेंट है जिसमें <Key> या <Parameter> एलिमेंट मौजूद नहीं है <InitialEntries> के अंदर.

    यहां, कुंजी-वैल्यू मैप के ऑपरेशन की नीति का एक नमूना दिया गया है, जिसमें <Parameter> एलिमेंट के अंदर <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>
    

    इस मामले में, पहले एलिमेंट की वजह से गड़बड़ी हो रही है.

रिज़ॉल्यूशन

पक्का करें कि कुंजी-वैल्यू मैप के ऑपरेशन की नीति में, <InitialEntries> एलिमेंट के अंदर मौजूद सभी <Entry> एलिमेंट में, <Key> एलिमेंट के बाद <Parameter> एलिमेंट मौजूद हो.

ऊपर दिखाई गई, कुंजी-वैल्यू मैप के ऑपरेशन की नीति के उदाहरण को ठीक करने के लिए, <Parameter> एलिमेंट जोड़ने पर समस्या हल हो जाती है:

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

गड़बड़ी का मैसेज

Edge यूज़र इंटरफ़ेस (यूआई) या Edge मैनेजमेंट एपीआई की मदद से, एपीआई प्रॉक्सी को डिप्लॉय करने पर, यह गड़बड़ी का मैसेज दिखता है:

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

गड़बड़ी के मैसेज का उदाहरण

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

गड़बड़ी के मैसेज वाले स्क्रीनशॉट का उदाहरण

वजह

यह गड़बड़ी तब होती है, जब कुंजी-वैल्यू मैप के ऑपरेशन की नीति के <InitialEntries> एलिमेंट के <Entry> में, <Value> एलिमेंट मौजूद न हो.

संक्रमण की जांच

  1. कुंजी-वैल्यू मैप के ऑपरेशन की उस नीति की पहचान करें जिसमें गड़बड़ी हुई है. यह जानकारी, गड़बड़ी के मैसेज में मौजूद होती है. उदाहरण के लिए, यहां दी गई गड़बड़ी में, कुंजी-वैल्यू मैप के ऑपरेशन की नीति का नाम GetKVM है.

    Error occurred while validation of bean GetKVM.xml. Reason: - Non null value expected for element Value in Entry
    
  2. कुंजी-वैल्यू मैप के ऑपरेशन की उस नीति में देखें जिसमें गड़बड़ी हुई है कि क्या कोई ऐसा <Entry> एलिमेंट है जिसमें <InitialEntries> के अंदर <Value> एलिमेंट मौजूद नहीं है.

    यहां, कुंजी-वैल्यू मैप के ऑपरेशन की नीति का एक नमूना दिया गया है, जिसमें <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>
        ...
    
    

रिज़ॉल्यूशन

पक्का करें कि कुंजी-वैल्यू मैप के ऑपरेशन की नीति में, <InitialEntries> एलिमेंट के अंदर मौजूद सभी <Entry> एलिमेंट में, <Value> एलिमेंट मौजूद हो.

ऊपर दिखाई गई, कुंजी-वैल्यू मैप के ऑपरेशन की नीति के उदाहरण को ठीक करने के लिए, <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>
            <Value>v1</Value>
        </Entry>
        <Entry>
            <Key>
                <Parameter>k2</Parameter>
            </Key>
            <Value>v2</Value>
        </Entry>
    </InitialEntries>
    ...