SOAP বার্তা যাচাইকরণ নীতি স্থাপনার ত্রুটি সমস্যা সমাধান

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান
তথ্য

অবৈধ রিসোর্স টাইপ

ত্রুটি বার্তা

এজ ইউআই বা এজ ম্যানেজমেন্ট এপিআই এর মাধ্যমে এপিআই প্রক্সির স্থাপনা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

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.

উদাহরণ ত্রুটি বার্তা

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.

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

SOAPMessageValidation নীতিতে <ResourceURL> উপাদানটি নীতি দ্বারা সমর্থিত নয় এমন একটি সংস্থান প্রকারে সেট করা থাকলে এই ত্রুটিটি ঘটে। সমর্থিত সম্পদের ধরন হল xsd এবং wsdl

রোগ নির্ণয়

  1. SOAPMessageValidation নীতির নাম এবং নীতির <ResourceURL> এলিমেন্টে ব্যবহৃত অবৈধ রিসোর্স প্রকার শনাক্ত করুন। আপনি ত্রুটি বার্তা এই আইটেম দুটি খুঁজে পেতে পারেন. উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে SOAPMessageValidation নীতির নাম হল SOAP-Message-Validation-1 এবং রিসোর্স টাইপ হল py

    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.
    
  2. ব্যর্থ SOAPMessageValidation নীতি XML পরীক্ষা করুন। যদি <ResourceURL> উপাদানের জন্য নির্দিষ্ট করা রিসোর্স টাইপ উপরের ধাপ 1-এ চিহ্নিত অবৈধ রিসোর্স টাইপের সাথে মেলে, তাহলে সেটাই ত্রুটির কারণ।

    উদাহরণস্বরূপ, নিম্নলিখিত নীতিটি py হিসাবে সম্পদের ধরন নির্দিষ্ট করে, যা ত্রুটি বার্তায় যা আছে তার সাথে মেলে:

    <?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> -এ ব্যবহৃত রিসোর্স টাইপ xsd বা wsdl নয়, উপরে দেখানো ত্রুটির সাথে স্থাপনা ব্যর্থ হবে।

রেজোলিউশন

নিশ্চিত করুন যে SOAPMessageValidation নীতির <ResourceURL> এলিমেন্টে নির্দিষ্ট করা রিসোর্স টাইপটি হয় xsd বা wsdl এ সেট করা আছে এবং রিসোর্স ফাইলটি সঠিক ফরম্যাটিং ব্যবহার করে।

উপরে দেখানো উদাহরণ SOAPMessageValidation নীতিটি সংশোধন করতে, আপনি xsd বা 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>

রিসোর্স কম্পাইল ব্যর্থ

ত্রুটি বার্তা

এজ ইউআই বা এজ ম্যানেজমেন্ট এপিআই এর মাধ্যমে এপিআই প্রক্সির স্থাপনা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

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.

উদাহরণ ত্রুটি বার্তা

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.

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

এই ত্রুটিটি ঘটে যদি SOAPMessageValidation নীতির <ResourceURL> উপাদানে উল্লেখ করা রিসোর্স স্ক্রিপ্টে এমন একটি ত্রুটি থাকে যা এটিকে স্থাপনার সময় কম্পাইল করা থেকে বাধা দেয়।

রোগ নির্ণয়

  1. SOAPMessageValidation নীতির নাম এবং নীতিতে ব্যবহৃত রিসোর্স স্ক্রিপ্ট সনাক্ত করুন। আপনি ত্রুটি বার্তা এই আইটেম দুটি খুঁজে পেতে পারেন. উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে SOAPMessageValidation নীতির নাম হল SOAP-Message-Validation-1 এবং রিসোর্স স্ক্রিপ্ট হল SOAP-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.
    
  2. ব্যর্থ SOAPMessageValidation নীতি XML পরীক্ষা করুন এবং যাচাই করুন যে <ResourceURL> উপাদানটির জন্য নির্দিষ্ট করা রিসোর্স স্ক্রিপ্ট ত্রুটি বার্তায় যা আছে তার সাথে মেলে।

    উদাহরণস্বরূপ, নিম্নলিখিত নীতি <ResourceURL> উপাদানটিকে SOAP-Message-Validation-1.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>
    
  3. ধাপ 1-এ চিহ্নিত রিসোর্স স্ক্রিপ্ট ফাইলটি দেখুন এবং দেখুন কোন সম্ভাব্য সমস্যা আছে কিনা যার ফলে সংকলন ত্রুটি হতে পারে।

    এখানে একটি উদাহরণ সম্পদ স্ক্রিপ্ট ফাইল:

    <?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 একটি অবৈধ URL নির্দেশ করে, উপরে দেখানো ত্রুটির সাথে স্থাপনা ব্যর্থ হবে।

রেজোলিউশন

নিশ্চিত করুন যে SOAPMessageValidation নীতির <ResourceURL> এলিমেন্টে উল্লেখ করা রিসোর্স স্ক্রিপ্টে এটিকে কম্পাইল করা থেকে বাধা দিতে কোনো সমস্যা নেই।

উপরে দেখানো SOAP-Message-Validation-1.wsdl স্ক্রিপ্ট সংশোধন করতে, আপনি একটি বৈধ URL নির্দেশ করতে xmlns:wsdl সংশোধন করতে পারেন:

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

RootElementName অনির্দিষ্ট

ত্রুটি বার্তা

এজ UI বা এজ ম্যানেজমেন্ট API এর মাধ্যমে API প্রক্সি সংরক্ষণ করা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

Error Saving Revision revision_number
MessageValidation soap_message_validation_policy:
RootElement name is not specified.

উদাহরণ ত্রুটি বার্তা

Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

SOAPMessageValidation নীতির <Element> এলিমেন্টে রুট এলিমেন্টের নাম না থাকলে এই ত্রুটি ঘটে।

রোগ নির্ণয়

  1. SOAPMessageValidation নীতির নাম সনাক্ত করুন যেখানে ত্রুটি ঘটেছে। উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে, SOAPMessageValidation নীতির নাম হল SOAP-Message-Validation-1 :

    Error Saving Revision 2
    MessageValidation SOAP-Message-Validation-1: RootElement name is not specified.
    
  2. ব্যর্থ SOAPMessageValidation নীতি XML পরীক্ষা করুন। যদি যাচাইকরণের জন্য ব্যবহৃত মূল উপাদানের নামটি <Element> এলিমেন্টে নির্দিষ্ট করা না থাকে, তাহলে সেটিই ত্রুটির কারণ।

    উদাহরণস্বরূপ, নিম্নলিখিত নীতি মূল উপাদানের নাম নির্দিষ্ট করে না:

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

    রুট এলিমেন্টের নাম উল্লেখ না থাকায় উপরে দেখানো ত্রুটির সাথে ডিপ্লয়মেন্ট ব্যর্থ হবে।

রেজোলিউশন

নিশ্চিত করুন যে SOAPMessageValidation নীতির <Element> উপাদানটিতে সঠিক মূল উপাদান রয়েছে।

উপরে দেখানো SOAPMessageValidation নীতি সংশোধন করতে, আপনি <Element> সংশোধন করতে পারেন এবং নীচের মত একটি বৈধ মূল উপাদান যোগ করতে পারেন:

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

অবৈধ রুট এলিমেন্ট নাম

ত্রুটি বার্তা

এজ UI বা এজ ম্যানেজমেন্ট API এর মাধ্যমে API প্রক্সি সংরক্ষণ করা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

Error Saving Revision revision_number
MessageValidation soap_message_validation_policy: RootElement name root_element_name is invalid.

উদাহরণ ত্রুটি বার্তা

Error Saving Revision 2
MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse
is invalid.

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

এই ত্রুটিটি ঘটে যদি SOAPMessageValidation নীতির <Element> উপাদানটিতে একটি মূল উপাদানের নাম থাকে যা বৈধ উপাদান নামকরণের জন্য XML নিয়ম মেনে চলে না।

রোগ নির্ণয়

  1. SOAPMessageValidation নীতির নাম সনাক্ত করুন যেখানে ত্রুটি ঘটেছে। উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে, SOAPMessageValidation নীতির নাম হল SOAP-Message-Validation-1 :

    Error Saving Revision 2
    MessageValidation SOAP-Message-Validation-1: RootElement name 1GetPriceResponse
    is invalid.
    
  2. ব্যর্থ SOAPMessageValidation নীতি XML পরীক্ষা করুন। যদি <Element> এলিমেন্টে উল্লিখিত রুট এলিমেন্টের নামটি একটি বৈধ XML এলিমেন্ট নামের মানদণ্ডের সাথে মেলে না, তাহলে সেটিই ত্রুটির কারণ।

    উদাহরণস্বরূপ, নিম্নলিখিত নীতিতে একটি মূল উপাদানের নাম রয়েছে যা একটি সংখ্যা দিয়ে শুরু হয়, যা অবৈধ৷ শূন্যস্থান ধারণকারী একটি উপাদানের নামও অবৈধ হবে।

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

রেজোলিউশন

নিশ্চিত করুন যে SOAPMessageValidation নীতির <Element> উপাদানটিতে একটি বৈধ মূল উপাদানের নাম রয়েছে।

উপরে দেখানো SOAPMessageValidation নীতি সংশোধন করতে, আপনি <Element> উপাদানটিকে একটি বৈধ রুট এলিমেন্ট নাম ধারণ করতে পরিবর্তন করতে পারেন, যেমনটি নীচে দেখানো হয়েছে:

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

কোন উপাদান

ত্রুটি বার্তা

এজ ইউআই বা এজ ম্যানেজমেন্ট এপিআই এর মাধ্যমে এপিআই প্রক্সির স্থাপনা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

Error Deploying Revision revision_number
Resource "resource_url" has no element definitions.

উদাহরণ ত্রুটি বার্তা

Error Deploying Revision 2 to test
Resource "xsd://Script-1.xsd" has no element definitions.

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

SOAPMessageValidation নীতির <Resource> এলিমেন্টে নির্দিষ্ট করা রিসোর্স ফাইলে এমন কোনো উপাদান না থাকলে এই ত্রুটি ঘটে যা বৈধকরণের জন্য ব্যবহার করা যেতে পারে।

রোগ নির্ণয়

  1. ত্রুটি বার্তা থেকে উপাদান সংজ্ঞা অনুপস্থিত সম্পদ ফাইল সনাক্ত করুন. উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে, তে ব্যবহৃত রিসোর্স ফাইলটি হল xsd://Script-1.xsd :

    Error Deploying Revision 2 to test
    Resource "xsd://Script-1.xsd" has no element definitions.
    
  2. ধাপ 1-এ চিহ্নিত রিসোর্স ফাইল পরীক্ষা করুন। যদি কোনো উপাদান সংজ্ঞায়িত না থাকে, তাহলে এটি ত্রুটির কারণ।

    উদাহরণস্বরূপ, নিম্নলিখিত রিসোর্স ফাইল Script-1.xsd কোনো উপাদান নেই:

    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    </xsd:schema>
    

    কারণ রিসোর্স ফাইলে কোনো উপাদান নেই, উপরে দেখানো ত্রুটির সাথে স্থাপনা ব্যর্থ হবে।

রেজোলিউশন

নিশ্চিত করুন যে SOAPMessageValidation নীতিতে ব্যবহৃত রিসোর্স ফাইলে প্রাসঙ্গিক উপাদানের সংজ্ঞা রয়েছে।

উপরে দেখানো উদাহরণ রিসোর্স ফাইল সংশোধন করতে, আপনি নিম্নলিখিত বিষয়বস্তু যোগ করতে xsd ফাইল পরিবর্তন করতে পারেন:

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