Anda sedang melihat dokumentasi Apigee dan Apigee hybrid.
Lihat
Dokumentasi Apigee Edge.
InvalidResourceType
Pesan Error
Deployment proxy API melalui UI Apigee atau API gagal dengan pesan error ini:
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.
Contoh Pesan Error
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.
Contoh Screenshot Error
Penyebab
Error ini terjadi jika elemen <ResourceURL>
dalam kebijakan SOAPMessageValidation disetel ke jenis resource yang tidak didukung oleh kebijakan. Jenis resource yang didukung adalah xsd
dan wsdl
.
Diagnosis
Identifikasi nama kebijakan SOAPMessageValidation dan jenis resource yang tidak valid yang digunakan dalam elemen
<ResourceURL>
kebijakan. Anda dapat menemukan kedua item ini di pesan error. Misalnya, dalam error berikut, nama kebijakan SOAPMessageValidation adalahSOAP-Message-Validation-1
dan jenis resource-nya adalahpy
.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.
Periksa XML kebijakan SOAPMessageValidation yang gagal. Jika jenis resource yang ditentukan untuk elemen
<ResourceURL>
cocok dengan jenis resource yang tidak valid yang diidentifikasi dalam Langkah 1 di atas, maka itulah penyebab error.Misalnya, kebijakan berikut menentukan jenis resource sebagai
py
, yang cocok dengan isi pesan error:<?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>
Karena jenis resource yang digunakan di
<ResourceURL>
bukanxsd
atauwsdl
, deployment akan gagal dengan error yang ditunjukkan di atas.
Resolusi
Pastikan jenis resource yang ditetapkan di elemen <ResourceURL>
kebijakan SOAPMessageValidation disetel ke xsd
atau wsdl
, dan file resource menggunakan format yang benar.
Untuk memperbaiki contoh kebijakan SOAPMessageValidation yang ditampilkan di atas, Anda dapat mengubah jenis resource menjadi xsd
atau 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
Pesan Error
Deployment proxy API melalui UI Apigee atau API gagal dengan pesan error ini:
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.
Contoh Pesan Error
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.
Contoh Screenshot Error
Penyebab
Error ini terjadi jika skrip resource yang dirujuk dalam elemen <ResourceURL>
kebijakan SOAPMessageValidation berisi error yang mencegah kompilasinya selama deployment.
Diagnosis
Identifikasi nama kebijakan SOAPMessageValidation dan skrip resource yang digunakan dalam kebijakan. Anda dapat menemukan kedua item ini di pesan error. Misalnya, dalam error berikut, nama kebijakan SOAPMessageValidation adalah
SOAP-Message-Validation-1
dan skrip resource-nya adalahSOAP-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.
Periksa XML kebijakan SOAPMessageValidation yang gagal dan pastikan skrip resource yang ditentukan untuk elemen
<ResourceURL>
cocok dengan yang ada dalam pesan error.Misalnya, kebijakan berikut menetapkan elemen
<ResourceURL>
sebagaiSOAP-Message-Validation-1.wsdl
, yang cocok dengan isi pesan error:<?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>
Lihat file skrip sumber daya yang diidentifikasi di Langkah 1 dan lihat apakah ada potensi masalah yang dapat mengakibatkan error kompilasi.
Berikut adalah contoh file skrip resource:
<?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>
Karena
xmlns:wsdl
mengarah ke URL yang tidak valid, deployment akan gagal dengan error yang ditampilkan di atas.
Resolusi
Pastikan skrip resource yang ditentukan dalam elemen <ResourceURL>
dari
Kebijakan SOAPMessageValidation tidak memiliki masalah apa pun yang mencegahnya dikompilasi.
Untuk memperbaiki skrip SOAP-Message-Validation-1.wsdl
yang ditampilkan di atas, Anda dapat
ubah xmlns:wsdl
agar mengarah ke URL yang valid:
<?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
Pesan Error
Penyimpanan proxy API melalui UI Apigee atau API akan gagal dengan pesan error ini:
Error Saving Revision revision_number MessageValidation soap_message_validation_policy: RootElement name is not specified.
Contoh Pesan Error
Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.
Contoh Screenshot Error
Penyebab
Error ini terjadi jika elemen <Element>
dalam kebijakan SOAPMessageValidation
tidak berisi nama elemen {i>root<i}.
Diagnosis
Mengidentifikasi nama kebijakan SOAPMessageValidation tempat error terjadi. Sebagai misalnya, dalam error berikut, nama kebijakan SOAPMessageValidation
SOAP-Message-Validation-1
:Error Saving Revision 2 MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.
Periksa XML kebijakan SOAPMessageValidation yang gagal. Jika nama elemen root yang digunakan untuk validasi tidak ditentukan dalam elemen
<Element>
, maka itulah penyebab error.Misalnya, kebijakan berikut tidak menetapkan nama elemen root:
<?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>
Karena nama elemen root tidak ditentukan, deployment akan gagal dengan error yang ditunjukkan di atas.
Resolusi
Pastikan elemen <Element>
dari kebijakan SOAPMessageValidation berisi
elemen {i>root<i} yang benar.
Untuk memperbaiki kebijakan SOAPMessageValidation yang ditampilkan di atas, Anda dapat mengubah
<Element>
dan tambahkan elemen root yang valid seperti di bawah:
<?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
Pesan Error
Penyimpanan proxy API melalui UI Apigee atau API akan gagal dengan pesan error ini:
Error Saving Revision revision_number MessageValidation soap_message_validation_policy: RootElement name root_element_name is invalid.
Contoh Pesan Error
Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse
is invalid.
Contoh Screenshot Error
Penyebab
Error ini terjadi jika elemen <Element>
dalam kebijakan SOAPMessageValidation
berisi nama elemen root yang tidak mematuhi aturan XML untuk elemen yang valid
penamaan.
Diagnosis
Mengidentifikasi nama kebijakan SOAPMessageValidation tempat error terjadi. Misalnya, dalam error berikut, nama kebijakan SOAPMessageValidation adalah
SOAP-Message-Validation-1
:Error Saving Revision 2 MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse is invalid.
Periksa XML kebijakan SOAPMessageValidation yang gagal. Jika nama elemen root yang ditentukan dalam elemen
<Element>
tidak cocok dengan kriteria XML yang valid nama elemen, maka itulah penyebab {i>error<i}.Misalnya, kebijakan berikut memiliki nama elemen root yang dimulai dengan angka, yang tidak valid. Nama elemen yang berisi spasi juga akan menjadi tidak valid.
<?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>
Resolusi
Pastikan elemen <Element>
dari kebijakan SOAPMessageValidation berisi
nama elemen {i>root<i} yang valid.
Untuk memperbaiki kebijakan SOAPMessageValidation yang ditampilkan di atas, Anda dapat mengubah
<Element>
untuk berisi nama elemen root yang valid, seperti yang ditunjukkan di bawah ini:
<?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
Pesan Error
Deployment proxy API melalui UI Apigee atau API gagal dengan pesan {i>error<i} ini:
Error Deploying Revision revision_number Resource "resource_url" has no element definitions.
Contoh Pesan Error
Error Deploying Revision 2 to test
Resource "xsd://Script-1.xsd" has no element definitions.
Contoh Screenshot Error
Penyebab
Error ini terjadi jika file resource ditentukan dalam elemen <Resource>
kebijakan SOAPMessageValidation tidak memuat elemen apa pun yang dapat digunakan
untuk validasi.
Diagnosis
Identifikasi file resource yang tidak memiliki definisi elemen dari pesan error. Misalnya, dalam error berikut, file resource yang digunakan adalah
xsd://Script-1.xsd
:Error Deploying Revision 2 to test Resource "xsd://Script-1.xsd" has no element definitions.
Periksa file resource yang diidentifikasi di Langkah 1. Jika tidak ada elemen yang didefinisikan, maka itulah penyebab kesalahannya.
Misalnya, file resource
Script-1.xsd
berikut tidak berisi elemen apa pun:<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> </xsd:schema>
Deployment akan gagal karena file resource tidak memiliki elemen apa pun dengan error yang ditampilkan di atas.
Resolusi
Pastikan file resource yang digunakan dalam kebijakan SOAPMessageValidation berisi definisi elemen yang relevan.
Untuk memperbaiki contoh file resource yang ditampilkan di atas, Anda dapat memodifikasi file xsd
untuk menambahkan konten berikut:
<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>