Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. info
InvalidResourceType
Komunikat o błędzie
Wdrażanie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub interfejsu Edge Management API kończy się niepowodzeniem i wyświetla ten komunikat o błędzie:
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.
Przykładowy komunikat o błędzie
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.
Przykładowy zrzut ekranu z błędem

Przyczyna
Ten błąd występuje, jeśli element <ResourceURL> w zasadach SOAPMessageValidation jest ustawiony na typ zasobu nieobsługiwany przez te zasady. Obsługiwane typy zasobów to xsd i wsdl.
Diagnostyka
Określ nazwę zasady SOAPMessageValidation i nieprawidłowy typ zasobu użyty w elemencie
<ResourceURL>zasady. Oba te elementy znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nazwa zasady SOAPMessageValidation toSOAP-Message-Validation-1, a typ zasobu topy.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.Sprawdź plik XML nieudanych zasad SOAPMessageValidation. Jeśli typ zasobu określony w elemencie
<ResourceURL>pasuje do nieprawidłowego typu zasobu zidentyfikowanego w kroku 1 powyżej, to jest to przyczyna błędu.Na przykład te zasady określają typ zasobu jako
py, co odpowiada temu, co znajduje się w komunikacie o błędzie:<?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>Ponieważ typ zasobu użyty w
<ResourceURL>nie jest typemxsdaniwsdl, wdrożenie zakończy się niepowodzeniem i wyświetli się powyższy błąd.
Rozdzielczość
Sprawdź, czy typ zasobu określony w elemencie <ResourceURL>zasady SOAPMessageValidation ma wartość xsd lub wsdl oraz czy plik zasobu ma prawidłowy format.
Aby poprawić pokazane powyżej zasady SOAPMessageValidation, możesz zmienić typ zasobu na xsd lub wsdl:
<?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
Komunikat o błędzie
Wdrażanie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub interfejsu Edge Management API kończy się niepowodzeniem i wyświetla ten komunikat o błędzie:
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.
Przykładowy komunikat o błędzie
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.
Przykładowy zrzut ekranu z błędem

Przyczyna
Ten błąd występuje, jeśli skrypt zasobu, do którego odwołuje się element <ResourceURL> w zasadach SOAPMessageValidation, zawiera błąd, który uniemożliwia jego skompilowanie podczas wdrażania.
Diagnostyka
Określ nazwę zasady SOAPMessageValidation i skrypt zasobu użyty w zasadzie. Oba te elementy znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nazwa zasady SOAPMessageValidation to
SOAP-Message-Validation-1, a skrypt zasobu toSOAP-Message-Validation-1.wsdl.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.Sprawdź kod XML zasady SOAPMessageValidation, która spowodowała błąd, i upewnij się, że skrypt zasobu określony w elemencie
<ResourceURL>jest zgodny z informacjami w komunikacie o błędzie.Na przykład te zasady określają element
<ResourceURL>jakoSOAP-Message-Validation-1.wsdl, co odpowiada treści komunikatu o błędzie:<?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>Wyświetl plik skryptu zasobu zidentyfikowany w kroku 1 i sprawdź, czy nie ma w nim potencjalnych problemów, które mogą powodować błędy kompilacji.
Oto przykładowy plik skryptu zasobu:
<?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>Ponieważ
xmlns:wsdlwskazuje nieprawidłowy adres URL, wdrożenie zakończy się niepowodzeniem i wyświetli się powyższy błąd.
Rozdzielczość
Sprawdź, czy skrypt zasobu określony w elemencie <ResourceURL> zasady SOAPMessageValidation nie zawiera żadnych problemów, które uniemożliwiają jego kompilację.
Aby poprawić powyższy skrypt SOAP-Message-Validation-1.wsdl, możesz zmodyfikować xmlns:wsdl, aby wskazywał prawidłowy adres URL:
<?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
Komunikat o błędzie
Zapisanie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub interfejsu Edge Management API kończy się niepowodzeniem i wyświetla się ten komunikat o błędzie:
Error Saving Revision revision_number MessageValidation soap_message_validation_policy: RootElement name is not specified.
Przykładowy komunikat o błędzie
Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.
Przykładowy zrzut ekranu z błędem

Przyczyna
Ten błąd występuje, jeśli element <Element> w zasadach SOAPMessageValidation nie zawiera nazwy elementu głównego.
Diagnostyka
Określ nazwę zasady SOAPMessageValidation, w której wystąpił błąd. Na przykład w tym błędzie nazwa zasady SOAPMessageValidation to
SOAP-Message-Validation-1:Error Saving Revision 2 MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.Sprawdź plik XML nieudanych zasad SOAPMessageValidation. Jeśli nazwa elementu głównego użyta do weryfikacji nie jest określona w elemencie
<Element>, to jest to przyczyną błędu.Na przykład te zasady nie określają nazwy elementu głównego:
<?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>Ponieważ nazwa elementu głównego nie jest określona, wdrożenie zakończy się niepowodzeniem i wyświetli się powyższy błąd.
Rozdzielczość
Sprawdź, czy element <Element> w zasadach SOAPMessageValidation zawiera prawidłowy element główny.
Aby poprawić zasadę SOAPMessageValidation pokazaną powyżej, możesz zmodyfikować element
<Element> i dodać prawidłowy element główny, jak poniżej:
<?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
Komunikat o błędzie
Zapisanie serwera proxy interfejsu API za pomocą interfejsu Edge UI lub interfejsu Edge Management API kończy się niepowodzeniem i wyświetla się ten komunikat o błędzie:
Error Saving Revision revision_number MessageValidation soap_message_validation_policy: RootElement name root_element_name is invalid.
Przykładowy komunikat o błędzie
Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse
is invalid.
Przykładowy zrzut ekranu z błędem

Przyczyna
Ten błąd występuje, jeśli element <Element> w zasadach SOAPMessageValidation zawiera nazwę elementu głównego, która nie jest zgodna z regułami XML dotyczącymi prawidłowego nazewnictwa elementów.
Diagnostyka
Określ nazwę zasady SOAPMessageValidation, w której wystąpił błąd. Na przykład w tym błędzie nazwa zasady SOAPMessageValidation to
SOAP-Message-Validation-1:Error Saving Revision 2 MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse is invalid.Sprawdź plik XML nieudanych zasad SOAPMessageValidation. Jeśli nazwa elementu głównego podana w elemencie
<Element>nie spełnia kryteriów prawidłowej nazwy elementu XML, to jest to przyczyną błędu.Na przykład poniższe zasady mają nazwę elementu głównego, która zaczyna się od cyfry, co jest nieprawidłowe. Nieprawidłowa byłaby też nazwa elementu zawierająca spacje.
<?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>
Rozdzielczość
Sprawdź, czy element <Element> zasady SOAPMessageValidation zawiera prawidłową nazwę elementu głównego.
Aby poprawić zasadę SOAPMessageValidation pokazaną powyżej, możesz zmodyfikować element
<Element> tak, aby zawierał prawidłową nazwę elementu głównego, jak pokazano poniżej:
<?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
Komunikat o błędzie
Wdrażanie proxy interfejsu API za pomocą interfejsu Edge UI lub interfejsu Edge Management API kończy się niepowodzeniem i wyświetla się ten komunikat o błędzie:
Error Deploying Revision revision_number Resource "resource_url" has no element definitions.
Przykładowy komunikat o błędzie
Error Deploying Revision 2 to test
Resource "xsd://Script-1.xsd" has no element definitions.
Przykładowy zrzut ekranu z błędem

Przyczyna
Ten błąd występuje, jeśli plik zasobu określony w elemencie <Resource> zasady SOAPMessageValidation nie zawiera żadnych elementów, których można użyć do weryfikacji.
Diagnostyka
Zidentyfikuj w komunikacie o błędzie plik zasobów, w którym brakuje definicji elementu. Na przykład w tym błędzie plik zasobu użyty w funkcji to
xsd://Script-1.xsd:Error Deploying Revision 2 to test Resource "xsd://Script-1.xsd" has no element definitions.Sprawdź plik zasobu wskazany w kroku 1. Jeśli nie zdefiniowano żadnych elementów, to jest to przyczyną błędu.
Na przykład ten plik zasobów
Script-1.xsdnie zawiera żadnych elementów:<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> </xsd:schema>Ponieważ plik zasobów nie zawiera żadnych elementów, wdrożenie zakończy się niepowodzeniem i wyświetli się powyższy błąd.
Rozdzielczość
Sprawdź, czy plik zasobu używany w zasadach SOAPMessageValidation zawiera odpowiednie definicje elementów.
Aby poprawić pokazany powyżej przykładowy plik zasobu, możesz zmodyfikować plik xsd, dodając do niego te informacje:
<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>