XSL Transform नीति के डिप्लॉयमेंट से जुड़ी गड़बड़ी की समस्या हल करना

Apigee Edge का दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

XSLEmptyResourceUrl

गड़बड़ी का मैसेज

Edge के यूज़र इंटरफ़ेस (यूआई) या Edge मैनेजमेंट एपीआई की मदद से, एपीआई प्रॉक्सी को डिप्लॉय करने पर गड़बड़ी का यह मैसेज दिखता है:

Error Saving Revision revision_number
Error occurred while validation of bean policy_name.xml. Reason:- Non null
value expected for element ResourceURL in XSL

गड़बड़ी के मैसेज का उदाहरण

नीचे दिए गए गड़बड़ी के मैसेज के उदाहरण में, गड़बड़ी की वजह XSL ट्रांसफ़ॉर्म नीति का नाम xslt है:

Error Saving Revision 1
Error occurred while validation of bean xslt.xml. Reason: - Non null value
expected for element ResourceURL in XSL

स्क्रीनशॉट का उदाहरण

Edge के यूज़र इंटरफ़ेस (यूआई) में, आपको नीचे दी गई तरह की गड़बड़ी वाला पॉप-अप दिखेगा:

वजह

अगर XSL ट्रांसफ़ॉर्म नीति में <ResourceURL> एलिमेंट खाली है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.

संक्रमण की जांच

गड़बड़ी के मैसेज में बताई गई XSL ट्रांसफ़ॉर्म नीति में <ResourceURL> एलिमेंट की जांच करें. अगर <ResourceURL> एलिमेंट में कोई रिसॉर्स यूआरएल नहीं दिया गया है, तो यह गड़बड़ी की वजह है. उदाहरण के लिए, नीचे दी गई XSL ट्रांसफ़ॉर्म की नीति में खाली <ResourceURL> एलिमेंट है:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XSL async="false" continueOnError="false" enabled="true" name="xslt">
    <DisplayName>xslt</DisplayName>
    <Properties/>
    <ResourceURL></ResourceURL>
    <Parameters ignoreUnresolvedVariables="true"/>
    <OutputVariable/>
</XSL>

<ResourceURL> एलिमेंट खाली होने की वजह से, एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.

रिज़ॉल्यूशन

पक्का करें कि XSL ट्रांसफ़ॉर्म नीति में मौजूद <ResourceURL> एलिमेंट में, XSLT फ़ाइल पर ले जाने वाला मान्य यूआरएल हो.

उदाहरण के लिए:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XSL async="false" continueOnError="false" enabled="true" name="xslt">
    <DisplayName>xslt</DisplayName>
    <Properties/>
    <ResourceURL>xsl://my_transform.xsl</ResourceURL>
    <Parameters ignoreUnresolvedVariables="true"/>
    <OutputVariable/>
</XSL>

XSLInvalidResourceType

गड़बड़ी का मैसेज

Edge के यूज़र इंटरफ़ेस (यूआई) या Edge मैनेजमेंट एपीआई की मदद से, एपीआई प्रॉक्सी को डिप्लॉय करने पर गड़बड़ी का यह मैसेज दिखता है:

Error Deploying Revision revision_number to env_name
XSL policy_name: Resource type must be xsl. Context Revision:revision_number;
APIProxy:api_proxy_name;Organization:org_name;Environment:env_name.

गड़बड़ी के मैसेज का उदाहरण

गड़बड़ी के मैसेज के नीचे दिए गए उदाहरण में, गड़बड़ी की वजह बनने वाली XSL ट्रांसफ़ॉर्म नीति का नाम xslt है:

Error Deploying Revision 1 to test
XSL xslt: Resource type must be xsl. Context Revision:1;APIProxy:XSLTransform;
Organization:jdoe-test;Environment:test.

स्क्रीनशॉट का उदाहरण

Edge के यूज़र इंटरफ़ेस (यूआई) में, आपको नीचे दी गई तरह की गड़बड़ी वाला पॉप-अप दिखेगा:

वजह

अगर XSL ट्रांसफ़ॉर्म की नीति के <ResourceURL> एलिमेंट में बताया गया रिसॉर्स टाइप, xsl टाइप का नहीं है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता.

इसे बताने का सही फ़ॉर्मैट यहां दिया गया है:

<ResourceURL>xsl://<file_name>.xsl</ResourceURL>

उदाहरण के लिए, अगर XSL ट्रांसफ़ॉर्म नीति के <ResourceURL> एलिमेंट में, संसाधन टाइप को jsc के तौर पर तय किया गया है, जैसा कि यहां दिखाया गया है, तो एपीआई प्रॉक्सी को डिप्लॉय नहीं किया जा सकता:

<ResourceURL>jsc://my_transform.xsl</ResourceURL>

संक्रमण की जांच

  1. उस XSL ट्रांसफ़ॉर्म नीति का नाम पहचानें जहां गड़बड़ी हुई है. गड़बड़ी के मैसेज से आपको यह जानकारी मिल सकती है. उदाहरण के लिए, नीचे दी गई गड़बड़ी में, नीति का नाम xslt है.

    XSL xslt: Resource type must be xsl. Context Revision:1;APIProxy:XSLTransform;
    Organization:jdoe-test;Environment:test.
    
  2. XSL ट्रांसफ़ॉर्म नीति के उस एक्सएमएल में पुष्टि करें जो काम नहीं कर रहा है. देखें कि <ResourceURL> एलिमेंट में बताए गए संसाधन का टाइप, xsl टाइप का तो नहीं है. अगर यह xsl टाइप का नहीं है, तो गड़बड़ी की वजह यही है.

    उदाहरण के लिए, इस नीति में <ResourceURL> एलिमेंट में नॉन xsl टाइप के बारे में बताया गया है:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XSL async="false" continueOnError="false" enabled="true" name="xslt">
        <DisplayName>xslt</DisplayName>
        <Properties/>
        <ResourceURL>jsc://my_transform.xsl</ResourceURL>
        <Parameters ignoreUnresolvedVariables="true"/>
        <OutputVariable/>
    </XSL>
    

    रिसॉर्स यूआरएल को jsc://my_transform.xsl के तौर पर सेट किया गया है, जो xsl टाइप का नहीं है. इसलिए, एपीआई प्रॉक्सी को डिप्लॉय करने में गड़बड़ी हुई:

    XSL xslt: Resource type must be xsl. Context Revision:1;APIProxy:XSLTransform;
    Organization:jdoe-test;Environment:test.
    

रिज़ॉल्यूशन

पक्का करें कि XSL ट्रांसफ़ॉर्म नीति के <ResourceURL> एलिमेंट में बताया गया संसाधन टाइप, हमेशा xsl टाइप का हो. उदाहरण के लिए:

  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <XSL async="false" continueOnError="false" enabled="true" name="xslt">
      <DisplayName>xslt</DisplayName>
      <Properties/>
      <ResourceURL>xsl://my_transform.xsl</ResourceURL>
      <Parameters ignoreUnresolvedVariables="true"/>
      <OutputVariable/>
  </XSL>