Apigee Edge belgelerini görüntülüyorsunuz.
.
Git:
Apigee X belgeleri. bilgi
InvalidResourceType
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 Deploying Revision revision_number to environment MessageValidation soap_message_validation_policy: Invalid Resource Type resource_type. It should be xsd or wsdl. Context Revision:revision_number;APIProxy:apiproxy_name;Organization:organization;Environment:environment.
Örnek Hata Mesajı
Error Deploying Revision 1 to test
MessageValidation SOAP-Message-Validation-1: Invalid Resource Type py.
It should be xsd or wsdl. Context Revision:1;APIProxy:soapmessagevalidation;
Organization:gsc-hipaa;Environment:test.
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, SOAPMessageValidation politikasındaki <ResourceURL>
öğesi, politika tarafından desteklenmeyen bir kaynak türüne ayarlanırsa ortaya çıkar. Desteklenen kaynak türleri şunlardır: xsd
ve wsdl
.
Teşhis
Politikanın
<ResourceURL>
öğesinde kullanılan SOAPMessageValidation politikasının adını ve geçersiz kaynak türünü tanımlayın. Bu öğelerin ikisini de hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada SOAPMessageValidation politikasının adıSOAP-Message-Validation-1
, kaynak türü isepy
şeklindedir.Error Deploying Revision 1 to test MessageValidation SOAP-Message-Validation-1: Invalid Resource Type py. It should be xsd or wsdl. Context Revision:1;APIProxy:soapmessagevalidation;Organization:gsc- hipaa;Environment:test.
Başarısız SOAPMessageValidation politika XML'ini inceleyin.
<ResourceURL>
öğesi için belirtilen kaynak türü, yukarıdaki 1. adımda tanımlanan geçersiz kaynak türüyle eşleşiyorsa hatanın nedeni budur.Örneğin, aşağıdaki politika, kaynak türünü hata mesajındakiyle eşleşen
py
olarak belirtir:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageValidation async="false" continueOnError="false" enabled="true" name="SOAP-Message-Validation-1"> <DisplayName>SOAP Message Validation-1</DisplayName> <Properties/> <Element namespace="http://sample.com"> sampleObject</Element> <SOAPMessage/> <Source>request</Source> <ResourceURL>py://Script-1.py</ResourceURL> </MessageValidation>
<ResourceURL>
öğesinde kullanılan kaynak türüxsd
veyawsdl
olmadığı için, dağıtım, yukarıda gösterilen hata ile başarısız olur.
Çözünürlük
SOAPMessageValidation politikasının <ResourceURL>
öğesinde belirtilen kaynak türünün xsd
veya wsdl
olarak ayarlandığından ve kaynak dosyasının doğru biçimlendirmeyi kullandığından emin olun.
Yukarıda gösterilen örnek SOAPMessageValidation politikasını düzeltmek için kaynak türünü xsd
veya wsdl
olarak değiştirebilirsiniz:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageValidation async="false" continueOnError="false" enabled="true"
name="SOAP-Message-Validation-1">
<DisplayName>SOAP Message Validation-1</DisplayName>
<Properties/>
<Element namespace="http://sample.com"> sampleObject</Element>
<SOAPMessage/>
<Source>request</Source>
<ResourceURL>wsdl://SOAP-Message-Validation-1.wsdl</ResourceURL>
</MessageValidation>
ResourceCompileFailed
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 Deploying Revision revision_number to environment MessageValidation soap_message_validation_policy: Failed to compile resource resource. Context Revision:revision_number;APIProxy:apiproxy_name;Organization:organization;Environment:environment.
Örnek Hata Mesajı
Error Deploying Revision 1 to test
MessageValidation SOAP-Message-Validation-1: Failed to compile resource SOAP-Message-Validation-1.wsdl. Context Revision:1;APIProxy:soapmessagevalidation;Organization:gsc-hipaa;Environment:test.
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, SOAPMessageValidation politikasının <ResourceURL>
öğesinde başvurulan kaynak komut dosyası, dağıtım sırasında derleme yapılmasını engelleyen bir hata içeriyorsa ortaya çıkar.
Teşhis
SOAPMessageValidation politikasının adını ve politikada kullanılan kaynak komut dosyasını tanımlayın. Bu öğelerin ikisini de hata mesajında bulabilirsiniz. Örneğin, aşağıdaki hatada SOAPMessageValidation politikasının adı
SOAP-Message-Validation-1
, kaynak komut dosyası iseSOAP-Message-Validation-1.wsdl
şeklindedir.Error Deploying Revision 1 to test MessageValidation SOAP-Message-Validation-1: Failed to compile resource SOAP-Message-Validation-1.wsdl. Context Revision:1;APIProxy:soapmessagevalidation;Organization:gsc-hipaa; Environment:test.
Başarısız SOAPMessageValidation politika XML'sini inceleyin ve
<ResourceURL>
öğesi için belirtilen kaynak komut dosyasının, hata mesajındakiyle eşleştiğini doğrulayın.Örneğin aşağıdaki politika,
<ResourceURL>
öğesini hata mesajındakiyle eşleşenSOAP-Message-Validation-1.wsdl
olarak belirtir:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageValidation async="false" continueOnError="false" enabled="true" name="SOAP-Message-Validation-1"> <DisplayName>SOAP Message Validation-1</DisplayName> <Properties/> <Element namespace="http://sample.com"> sampleObject</Element> <SOAPMessage/> <Source>request</Source> <ResourceURL>wsdl://SOAP-Message-Validation-1.wsdl</ResourceURL> </MessageValidation>
1. Adım'da tanımlanan kaynak komut dosyası dosyasını görüntüleyin ve dosya olup olmadığına bakın derleme hatalarına neden olabilecek potansiyel sorunlar.
Aşağıda örnek bir kaynak komut dosyası dosyası verilmiştir:
<?xml version="1.0" encoding="ISO-8859-1"?> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsd/"> <wsdl:types> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="request" type="xs:string"/> </xs:schema> </wsdl:types> </wsdl:definitions>
xmlns:wsdl
, geçersiz bir URL'ye yönlendirdiğinden dağıtım başarısız olur.
Çözünürlük
Komut dosyasının <ResourceURL>
öğesinde belirtilen kaynak komut dosyasının,
SOAPMessageValidation politikasında, derlemeyi engelleyen bir sorun yok.
Yukarıda gösterilen SOAP-Message-Validation-1.wsdl
komut dosyasını düzeltmek için şunları yapabilirsiniz:
xmlns:wsdl
öğesini geçerli bir URL'ye yönlendirecek şekilde değiştirin:
<?xml version="1.0" encoding="ISO-8859-1"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="request" type="xs:string"/>
</xs:schema>
</wsdl:types>
</wsdl:definitions>
RootElementNameUnspecified
Hata Mesajı
API proxy'sini Edge Kullanıcı Arayüzü veya Edge management API aracılığıyla kaydetme işlemi şu hata mesajını görüyorsunuz:
Error Saving Revision revision_number MessageValidation soap_message_validation_policy: RootElement name is not specified.
Örnek Hata Mesajı
Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, SOAPMessageValidation politikasındaki <Element>
öğesi
kök öğenin adını içermez.
Teşhis
Hatanın oluştuğu SOAPMessageValidation politikasının adını tanımlayın. Örneğin, Örneğin, aşağıdaki hatada, SOAPMessageValidation politikasının adı:
SOAP-Message-Validation-1
:Error Saving Revision 2 MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.
Başarısız SOAPMessageValidation politika XML'ini inceleyin. Kök öğenin adı doğrulama için kullanılan dil
<Element>
öğesinde belirtilmemişse bu yardımcı olur.Örneğin, aşağıdaki politika kök öğe adını belirtmez:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageValidation async="false" continueOnError="false" enabled="true" name="SOAP-Message-Validation-1"> <DisplayName>SOAP Message Validation-1</DisplayName> <Properties/> <Element namespace="http://schemas.xmlsoap.org/soap/prices"/> <SOAPMessage/> <Source>request</Source> <ResourceURL>xsd://Script-1.xsd</ResourceURL> </MessageValidation>
Kök öğe adı belirtilmediğinden dağıtım, yukarıda gösterilen hatayla başarısız olur.
Çözünürlük
SOAPMessageValidation politikasının <Element>
öğesinin, şunu içerdiğinden emin olun:
eklemeniz gerekir.
Yukarıda gösterilen SOAPMessageValidation politikasını düzeltmek için
<Element>
ve aşağıdaki gibi geçerli bir kök öğe ekleyin:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageValidation async="false" continueOnError="false" enabled="true"
name="SOAP-Message-Validation-1">
<DisplayName>SOAP Message Validation-1</DisplayName>
<Properties/>
<Element namespace="http://schemas.xmlsoap.org/soap/prices">GetPriceResponse</Element>
<SOAPMessage/>
<Source>request</Source>
<ResourceURL>xsd://Script-1.xsd</ResourceURL>
</MessageValidation>
InvalidRootElementName
Hata Mesajı
API proxy'sini Edge Kullanıcı Arayüzü veya Edge management API aracılığıyla kaydetme işlemi şu hata mesajını görüyorsunuz:
Error Saving Revision revision_number MessageValidation soap_message_validation_policy: RootElement name root_element_name is invalid.
Örnek Hata Mesajı
Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse
is invalid.
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, SOAPMessageValidation politikasındaki <Element>
öğesi
geçerli öğe için XML kurallarına uymayan bir kök öğe adı içeriyor
adlandırabilirsiniz.
Teşhis
Hatanın oluştuğu SOAPMessageValidation politikasının adını tanımlayın. Örneğin, aşağıdaki hatada SOAPMessageValidation politikasının adı
SOAP-Message-Validation-1
şeklindedir:Error Saving Revision 2 MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse is invalid.
Başarısız SOAPMessageValidation politika XML'ini inceleyin. Kök öğenin adı
<Element>
öğesinde belirtilen, geçerli bir XML ölçütleriyle eşleşmiyor öğesi varsa hatanın nedeni budur.Örneğin, aşağıdaki politika Bu sayı geçersizdir. Boşluk içeren bir öğe adı da geçersiz olur.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <MessageValidation async="false" continueOnError="false" enabled="true" name="SOAP-Message-Validation-1"> <DisplayName>SOAP Message Validation-1</DisplayName> <Properties/> <Element namespace="http://schemas.xmlsoap.org/soap/prices">1GetPriceResponse</Element> <SOAPMessage/> <Source>request</Source> <ResourceURL>xsd://Script-1.xsd</ResourceURL> </MessageValidation>
Çözünürlük
SOAPMessageValidation politikasının <Element>
öğesinin, şu bilgiyi içerdiğinden emin olun:
geçerli bir kök öğe adı olmalıdır.
Yukarıda gösterilen SOAPMessageValidation politikasını düzeltmek için
<Element>
öğesi, aşağıda gösterildiği gibi geçerli bir kök öğe adı içermelidir:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MessageValidation async="false" continueOnError="false" enabled="true" name="SOAP-Message-Validation-1">
<DisplayName>SOAP Message Validation-1</DisplayName>
<Properties/>
<Element namespace="http://schemas.xmlsoap.org/soap/prices">GetPriceResponse</Element>
<SOAPMessage/>
<Source>request</Source>
<ResourceURL>xsd://Script-1.xsd</ResourceURL>
</MessageValidation>
NoElements
Hata Mesajı
API proxy'sinin Edge Kullanıcı Arayüzü veya Edge management API üzerinden dağıtılması başarısız şu hata mesajıyla:
Error Deploying Revision revision_number Resource "resource_url" has no element definitions.
Örnek Hata Mesajı
Error Deploying Revision 2 to test
Resource "xsd://Script-1.xsd" has no element definitions.
Örnek Hata Ekran Görüntüsü
Neden
Bu hata, kaynak dosyasının <Resource>
öğesinde belirtilen
SOAPMessageValidation politikası, kullanılabilecek hiçbir öğe içermiyor
kontrol edin.
Teşhis
Hata mesajındaki eksik öğe tanımlarını kaynak dosyası olarak belirleyin. Örneğin, aşağıdaki hatada,
xsd://Script-1.xsd
içinde kullanılan kaynak dosyası kullanılmıştır:Error Deploying Revision 2 to test Resource "xsd://Script-1.xsd" has no element definitions.
1. adımda tanımlanan kaynak dosyasını inceleyin. Tanımlanmış öğe yoksa hatanın nedeni budur.
Örneğin, şu kaynak dosyası
Script-1.xsd
hiç öğe içermiyor:<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> </xsd:schema>
Kaynak dosyada öğe bulunmadığı için dağıtım başarısız olur. yukarıda gösterilen hata ile karşılaşırsınız.
Çözünürlük
SOAPMessageValidation politikasında kullanılan kaynak dosyasının şu içeriği içerdiğinden emin olun: ilgili öğe tanımlarını göz önünde bulundurun.
Yukarıda gösterilen örnek kaynak dosyasını düzeltmek için xsd
dosyasını değiştirebilirsiniz.
kodunu ekleyin:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="shipOrder" type="order"/>
<xsd:complexType name="order">
<xsd:sequence>
<xsd:element name="shipTo" type="shipAddress"/>
<xsd:element name="items" type="cdItems"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="shipAddress">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="address" type="xsd:string"/>
<xsd:element name="country" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="cdItems">
<xsd:sequence>
<xsd:element name="item" type="cdItem" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="cdItem">
<xsd:sequence>
<xsd:element name="title" type="xsd:string"/>
<xsd:element name="quantity" type="xsd:integer"/>
<xsd:element name="price" type="xsd:decimal"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>