Khắc phục sự cố triển khai chính sách Chuyển đổi ký

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

XSLEmptyResourceUrl

Thông báo lỗi

Triển khai proxy API thông qua giao diện người dùng Edge hoặc API quản lý Edge không thành công với thông báo lỗi này:

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

Ví dụ về thông báo lỗi

Trong thông báo lỗi ví dụ sau, tên của chính sách Chuyển đổi BII gây ra lỗi là xslt:

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

Ảnh chụp màn hình mẫu

Trong giao diện người dùng Edge, bạn sẽ thấy lỗi cửa sổ bật lên tương tự như sau:

Nguyên nhân

Nếu phần tử <ResourceURL> trong chính sách Chuyển đổi RTB trống thì hàm không triển khai được proxy API.

Chẩn đoán

Kiểm tra phần tử <ResourceURL> trong chính sách Chuyển đổi BII có tên trong lỗi . Nếu không có URL tài nguyên nào được chỉ định trong phần tử <ResourceURL>, thì đó là nguyên nhân gây ra lỗi. Ví dụ: Chuyển đổi PPID sau chính sách có phần tử <ResourceURL> trống:

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

Vì phần tử <ResourceURL> trống nên việc triển khai proxy API không thành công.

Độ phân giải

Đảm bảo rằng phần tử <ResourceURL> trong chính sách Chuyển đổi BII có giá trị hợp lệ URL trỏ đến một tệp sang tên.

Ví dụ:

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

Thông báo lỗi

Triển khai proxy API thông qua giao diện người dùng Edge hoặc API quản lý Edge không thành công với thông báo lỗi này:

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.

Ví dụ về thông báo lỗi

Trong thông báo lỗi ví dụ sau, tên của chính sách Chuyển đổi BII gây ra lỗi là xslt:

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

Ảnh chụp màn hình mẫu

Trong giao diện người dùng Edge, bạn sẽ thấy lỗi cửa sổ bật lên tương tự như sau:

Nguyên nhân

Nếu loại tài nguyên được chỉ định trong phần tử <ResourceURL> của Chuyển đổi RTB chính sách không thuộc loại xsl thì không triển khai proxy API được.

Định dạng chính xác để chỉ định việc này như sau:

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

Ví dụ: nếu loại tài nguyên được chỉ định là jsc trong <ResourceURL> của chính sách Chuyển đổi BII như được hiển thị dưới đây, sau đó việc triển khai Proxy API không thành công:

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

Chẩn đoán

  1. Xác định tên của chính sách Chuyển đổi {8/} đã xảy ra lỗi. Bạn có thể tìm thấy thông tin này trong thông báo lỗi. Ví dụ: trong lỗi sau, tên chính sách là xslt.

    XSL xslt: Resource type must be xsl. Context Revision:1;APIProxy:XSLTransform;
    Organization:jdoe-test;Environment:test.
    
  2. Trong XML của chính sách Chuyển đổi BII không thành công, hãy xác minh xem loại tài nguyên được chỉ định trong phần tử <ResourceURL> có phải là loại xsl hay không. Nếu mã này không thuộc loại xsl thì đó là nguyên nhân gây ra lỗi.

    Ví dụ: chính sách sau đây chỉ định một loại không phải xsl trong phần tử <ResourceURL>:

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

    Do URL tài nguyên được chỉ định là jsc://my_transform.xsl, không thuộc loại xsl, nên việc triển khai Proxy API không thành công gây ra lỗi:

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

Độ phân giải

Đảm bảo rằng loại tài nguyên được chỉ định trong phần tử <ResourceURL> của PPID Chính sách chuyển đổi luôn thuộc loại xsl. Ví dụ:

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