Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
EitherOptionOrFormat
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtılması şu hata mesajıyla başarısız olur:
Error Saving Revision [revision_number] XMLToJSON[{0}]: Either Options or Format must be specified.
Örnek hata
Error Saving Revision 1
XMLToJSON[{0}]: Either Options or Format must be specified.
Örnek ekran görüntüsü
Neden
<Options>
veya <Format>
öğelerinden biri XML'den JSON'a Geçiş Politikası'nda tanımlanmamışsa API proxy'sinin dağıtımı başarısız olur.
<Format>
kullanmıyorsanız <Options>
gereklidir.
<Format>
öğesini veya <Options>
öğe grubunu kullanın. Hem <Format>
hem de <Options>
kullanılamaz. Önceden tanımlanmış biçimler şunları içerir: xml.com
, yahoo
, google
ve badgerFish
.
Teşhis
Hatanın gerçekleştiği ilgili API proxy'sinde tüm XML'den JSON'a geçiş politikalarını inceleyin.
<Options>
veya<Format>
öğelerinden birinin bildirilmediği bir XML'den JSON'a Geçiş politikası varsa hatanın nedeni budur.Örneğin, aşağıdaki politikada öğelerin hiçbiri beyan edilmemiştir:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON"> <DisplayName>XMLToJSON</DisplayName> <Properties/> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Çözünürlük
XML to JSON politikasına ait XML'in, politikada tanımlanan <Options>
veya <Format>
öğelerinden birinin bulunduğundan emin olun.
1. Örnek:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
<DisplayName>XMLToJSON</DisplayName>
<Properties/>
<Format>google</Format>
<OutputVariable>response</OutputVariable>
<Source>response</Source>
</XMLToJSON>
2. Örnek:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
<DisplayName>XMLToJSON</DisplayName>
<Properties/>
<Options>
<RecognizeNumber>true</RecognizeNumber>
<RecognizeBoolean>true</RecognizeBoolean>
<RecognizeNull>true</RecognizeNull>
</Options>
<OutputVariable>response</OutputVariable>
<Source>response</Source>
</XMLToJSON>
UnknownFormat
Hata mesajı
API proxy'sinin Edge kullanıcı arayüzü veya Edge Management API aracılığıyla dağıtılması şu hata mesajıyla başarısız olur:
Error Saving Revision [revision_number] XMLToJSON[policy_name]: Unknown Format [unknown_format].
Örnek hata
Error Saving Revision 1
XMLToJSON[WithFormat]: Unknown Format google.com.
Örnek ekran görüntüsü
Neden
XML'den JSON'a geçiş politikasındaki <Format>
öğesi için bilinmeyen bir biçim tanımlanmışsa API proxy'sinin dağıtımı başarısız olur.
Önceden tanımlanmış biçimler şunları içerir: xml.com
, yahoo
, google
ve badgerFish
.
Teşhis
Hatanın oluştuğu yerde XML'den JSON'a geçiş politikasını ve bilinmeyen biçimi tanımlayın. Bu bilgileri hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada politika adı
WithFormat
, bilinmeyen biçim isegoogle.com
şeklindedir:Error Saving Revision 1 XMLToJSON[WithFormat]: Unknown Format google.com.
Başarısız XML'den JSON'a dönüştürme politikasında belirtilen bilinmeyen biçimin, hata mesajında belirtilen değerle eşleştiğini doğrulayın (yukarıdaki 1. adım). Örneğin, aşağıdaki politikada biçim, hata mesajındaki metinle eşleşen
google.com
olarak belirtilmektedir:<XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat"> <DisplayName>WithFormat</DisplayName> <Properties/> <Format>google.com</Format> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Belirtilen Biçim önceden tanımlanmış
xml.com
,yahoo
,google
veyabadgerFish
biçimlerinden biri değilse hatanın nedeni budur.Yukarıda gösterilen örnek XML'den JSON'a Politikası'nda biçim geçersiz olan
google.com
şeklindedir. Bu nedenle, API Proxy'sinin dağıtımı şu hatayı vererek başarısız olur:XMLToJSON[WithFormat]: Unknown Format google.com.
Çözünürlük
XML'den JSON'a geçiş politikasının <Format>
öğesinde belirtilen biçimin geçerli olduğundan emin olun. Örneğin:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat">
<DisplayName>WithFormat</DisplayName>
<Properties/>
<Format>google</Format>
<OutputVariable>response</OutputVariable>
<Source>response</Source>
</XMLToJSON>