אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
InvalidResourceUrlFormat
הודעת שגיאה
פריסה של שרת proxy ל-API דרך ממשק המשתמש של Edge או Edge management API נכשלת עם הודעת השגיאה הבאה:
Error Deploying Revision revision_number to environment Invalid resource url format. Resource url is invalid_URL.
הודעת שגיאה לדוגמה
Error Deploying Revision 1 to test
Invalid resource url format. Resource url is jsc:add_variables.js.
צילום מסך לדוגמה

סיבה
אם הפורמט של כתובת ה-URL של המשאב שצוינה ברכיב <ResourceURL> או ברכיב <IncludeURL> של מדיניות JavaScript לא תקין, פריסת ה-proxy ל-API תיכשל.
הפורמט הנכון לציון כתובת ה-URL של המשאב מוצג בהמשך:
<ResourceURL>jsc://<file_name>.js</ResourceURL>
<IncludeURL>jsc://<file_name>.js</IncludeURL>
לדוגמה, אם הרכיב <ResourceURL> מצוין כמו בדוגמה שלמטה, הפריסה של שרת ה-API הפרוקסי נכשלת כי הוא לא תואם לתבנית שנקבעה:
<ResourceURL>jsc:add_variables.js</ResourceURL>
אבחון
לזהות את הפורמט הלא תקין של כתובת ה-URL של המשאב שמוגדר במדיניות JavaScript. אפשר למצוא את המידע הזה בהודעת השגיאה. לדוגמה, בשגיאה הבאה, הפורמט הלא תקין של כתובת ה-URL של המשאב הוא
jsc:add_variables.js.Error Deploying Revision 1 to test Invalid resource url format. Resource url is jsc:add_variables.js.בודקים את כל כללי המדיניות של JavaScript ב-API Proxy הספציפי שבו התרחש הכשל. אם יש מדיניות JavaScript שבה כתובת ה-URL של המשאב שצוינה ברכיב
<ResourceURL>או ברכיב<IncludeURL>תואמת לרשומה הלא חוקית שזוהתה בשלב 1 למעלה, אז זו הסיבה לשגיאה.לדוגמה, במדיניות הבאה כתובת ה-URL של המשאב היא
jsc:add_variables.js, שזהה למה שמופיע בהודעת השגיאה:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>jsc:add_variables.js</ResourceURL> </Javascript>כתובת ה-URL של המשאב מוגדרת כ-
jsc:add_variables.js, שהיא לא תקינה, ולכן הפריסה של ה-API Proxy נכשלת עם השגיאה:Invalid resource url format. Resource url is jsc:add_variables.js.
רזולוציה
צריך לוודא שפורמט כתובת ה-URL של המשאב שצוין ברכיב <ResourceURL> או <IncludeURL> במדיניות JavaScript תקין. לדוגמה:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable">
<DisplayName>js-TotalVariable</DisplayName>
<Properties/>
<ResourceURL>jsc://add_variables.js</ResourceURL>
</Javascript>
InvalidResourceUrlReference
הודעת שגיאה
פריסה של שרת proxy ל-API דרך ממשק המשתמש של Edge או Edge management API נכשלת עם הודעת השגיאה הבאה:
Error Deploying Revision revision_number to environment Invalid resource url ref invalid_reference in policy policy_name in org_name
הודעת שגיאה לדוגמה
Error Deploying Revision 8 to test
Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
צילום מסך לדוגמה

סיבה
אם הרכיבים <ResourceURL> ו-<IncludeURL> מפנים לקובץ JavaScript שלא קיים, הפריסה של ה-proxy ל-API תיכשל.
אם אתם פורסים חבילת proxy מהמחשב המקומי, קובצי המקור של JavaScript צריכים להיות מאוחסנים בתיקייה /apiproxy/resources/jsc. במקרה הזה, קובצי המקור מוגבלים ל-API Proxy.
בממשק המשתמש של Edge, קובצי המקור של JavaScript מופיעים בקטע jsc שבקטע Scripts (סקריפטים) בחלונית Navigator (ניווט) של הכלי לעריכת proxy ל-API. אפשר גם לאחסן קובצי משאבים במאגרי מידע ברמת הארגון והסביבה (לדוגמה, כדי להפוך קוד JavaScript לזמין לכל ה-proxy בארגון או בסביבה).
השגיאה הזו מתרחשת אם לא ניתן למצוא קובץ משאב כלשהו שצוין במדיניות באף אחד מההיקפים הזמינים (proxy, סביבה או ארגון).
אבחון
מזהים את מדיניות JavaScript שבה התרחשה השגיאה ושכוללת הפניה לא תקינה לכתובת URL של משאב. אפשר למצוא את המידע הזה בהודעת השגיאה. לדוגמה, בשגיאה הבאה, שם המדיניות הוא
js-TotalVariableוההפניה הלא תקינה לכתובת ה-URL של המשאב היאjsc://dependent_js.js.Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-evalמוודאים שההפניה לכתובת ה-URL של המשאב שצוינה במדיניות JavaScript שנכשלה תואמת לערך שזוהה בהודעת השגיאה (שלב 1 למעלה). לדוגמה, במדיניות הבאה כתובת ה-URL של המשאב היא
jsc://dependent_js.js, שזהה למה שמופיע בהודעת השגיאה:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>jsc://add_variables.js</ResourceURL> <IncludeURL>jsc://dependent_js.js</IncludeURL> </Javascript>בודקים אם קובץ המקור שזוהה בשלב 1 הוא חלק מחבילת ה-API Proxy הספציפית, או שהוא קיים בהיקף הארגון או הסביבה.
- כדי לבדוק אם הקובץ הוא חלק מחבילת ה-API Proxy הספציפית, מבצעים אחת מהפעולות הבאות:
- בממשק המשתמש של Edge, בודקים אם הקובץ נמצא בקטע Scripts של proxy ל-API.
- מורידים את חבילת ה-API Proxy ומחפשים אם הקובץ קיים.
- אם הקובץ לא כלול בחבילת ה-API Proxy הספציפית, צריך לבדוק אם הוא קיים ברמת הארגון או הסביבה. אפשר להשתמש ב-Resource Files API כדי לבצע את הבדיקה הזו.
אם הקובץ לא קיים ברמת ה-API Proxy, הארגון או הסביבה, זו הסיבה לשגיאה.
בדוגמה שמתוארת למעלה, שם קובץ ה-JavaScript הלא תקין הוא
dependent_js.js. בצילום המסך שלמטה אפשר לראות שהקובץ שצוין ככתובת URL של משאב במדיניות לא מופיע בקטע Scripts (סקריפטים). לכן, הוא לא חלק מ-API Proxy. אם הקובץ לא קיים גם ברמת הארגון או הסביבה, הפריסה של ה-API Proxy תיכשל עם השגיאה:Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
- כדי לבדוק אם הקובץ הוא חלק מחבילת ה-API Proxy הספציפית, מבצעים אחת מהפעולות הבאות:
רזולוציה
מוודאים שקובצי ה-JavaScript שצוינו ברכיבי <ResourceURL> ו-<IncludeURL> מפנים לקובץ תקין שקיים ברמת ה-API Proxy, הארגון או הסביבה.
כדי לתקן את מדיניות JavaScript שמוצגת בדוגמה שלמעלה, מוסיפים את הקובץ dependent_js.js לחבילת ה-API Proxy. בצילום המסך שלמטה אפשר לראות שקובצי ה-JavaScript שצוינו ברכיבי <ResourceURL> ו-<IncludeURL> מוצגים בקטע Scripts של חבילת ה-API Proxy.

WrongResourceType
הודעת שגיאה
פריסה של שרת proxy ל-API דרך ממשק המשתמש של Edge או Edge management API נכשלת עם הודעת השגיאה הבאה:
Error Deploying Revision revision_number to environment Resource JavaScript_file is the wrong type. It is invalid_type: but Javascript steps use type jsc:.
הודעת שגיאה לדוגמה
Error Deploying Revision 2 to test
Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
צילום מסך לדוגמה

סיבה
השגיאה הזו מתרחשת במהלך הפריסה אם הרכיבים <ResourceURL> ו-<IncludeURL> של מדיניות JavaScript מתייחסים לסוג משאב כלשהו שאינו jsc (קובץ JavaScript).
לדוגמה, אם רכיב <IncludeURL> מוצהר כמו בדוגמה הבאה, הפריסה של proxy ל-API נכשלת:
<IncludeURL>node://javascript-dependency.js</IncludeURL>
הסיבה לכך היא שההפניה היא לסוג משאב node שגוי.
אבחון
זיהוי סוג המשאב הלא תקין שנעשה בו שימוש במדיניות JavaScript. אפשר למצוא את המידע הזה בהודעת השגיאה. לדוגמה, בשגיאה הבאה, סוג המשאב הלא תקין הוא
node.Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.בודקים את כל כללי המדיניות של JavaScript ב-API Proxy הספציפי שבו התרחשה השגיאה. אם יש מדיניות JavaScript שבה המשאב שצוין ברכיב
<ResourceURL>או<IncludeURL>תואם לסוג המשאב הלא תקין שזוהה בשלב 1 למעלה, אז זו הסיבה לשגיאה.לדוגמה, במדיניות הבאה סוג המשאב הוא
node, שזהה למה שמופיע בהודעת השגיאה:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>node://js_checkType.js</ResourceURL> <IncludeURL>jsc://javascript-dependency.js</IncludeURL> </Javascript>מכיוון שסוג המשאב מוגדר כ-
node, שהוא לא תקין, הפריסה של ה-API Proxy נכשלת עם השגיאה:Resource js_checkType.js is the wrong type. It is node: but Javascript steps use type jsc:.
רזולוציה
מוודאים שהרכיבים <ResourceURL> ו-<IncludeURL> במדיניות JavaScript תמיד מתייחסים לסוג המשאב jsc.
כדי לתקן את הדוגמה שמוצגת למעלה, משנים את האלמנט <ResourceURL> כך שסוג המשאב יהיה jsc.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable">
<DisplayName>js-TotalVariable</DisplayName>
<Properties/>
<ResourceURL>jsc://js_checkType.js</ResourceURL>
<IncludeURL>jsc://javascript-dependency.js</IncludeURL>
</Javascript>
NoResourceURLOrSource
הודעת שגיאה
פריסה של שרת proxy ל-API דרך ממשק המשתמש של Edge או Edge management API נכשלת עם הודעת השגיאה הבאה:
Error Saving Revision revision_number Bundle is invalid. Errors:[Entity : Policy-policy_name, No ResourceURL or Source;].
הודעת שגיאה לדוגמה
Error Saving Revision 10
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
צילום מסך לדוגמה

סיבה
פריסת מדיניות JavaScript עלולה להיכשל עם השגיאה הזו בתרחישים הבאים:
- אם הרכיב
<ResourceURL>לא מוצהר או אם כתובת ה-URL של המשאב לא מוגדרת בתוך הרכיב הזה. האלמנט<ResourceURL>הוא אלמנט חובה. - האלמנט
<IncludeURL>מוצהר אבל כתובת ה-URL של המשאב לא מוגדרת בתוך האלמנט הזה. הרכיב<IncludeURL>הוא אופציונלי, אבל אם הוא מוצהר, צריך לציין את כתובת ה-URL של המשאב בתוך הרכיב<IncludeURL>.
לדוגמה, אם רכיב <IncludeURL> מוצהר כמו בדוגמה הבאה, הפריסה של proxy ל-API נכשלת:
<IncludeURL></IncludeURL>
אבחון
מזהים את מדיניות JavaScript שבה התרחשה השגיאה. אפשר למצוא את המידע הזה בהודעת השגיאה. לדוגמה, בשגיאה הבאה, שם המדיניות הוא
Policy-js-example:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].בקובץ ה-XML של מדיניות JavaScript שנכשל, מבצעים את הבדיקות הבאות:
- צריך להצהיר על הרכיב
<ResourceURL>ולהגדיר בו את כתובת ה-URL של המשאב. - אם מצהירים על הרכיב
<IncludeURL>, צריך לציין בתוכו כתובת URL של משאב. ההצהרה על הרכיב<IncludeURL>היא אופציונלית.
אם אחת מהבדיקות שלמעלה נכשלת, זו הסיבה לשגיאה.
דוגמה 1: במדיניות הבאה לא מוצהר על הרכיב
<ResourceURL>:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> </Javascript>מכיוון שהרכיב
<ResourceURL>לא הוגדר, הפריסה של ה-API Proxy נכשלת עם השגיאה:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].דוגמה 2: במדיניות הבאה יש רכיב
<IncludeURL>ריק.- צריך להצהיר על הרכיב
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example">
<DisplayName>js-example</DisplayName>
<Properties/>
<ResourceURL>jsc://check_var.js</ResourceURL>
<IncludeURL></IncludeURL>
</Javascript>
מכיוון שלרכיב <IncludeURL> אין כתובת URL של משאב, הפריסה של ה-API Proxy נכשלת עם השגיאה:
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
רזולוציה
מוודאים שכללי המדיניות של JavaScript כוללים את הדברים הבאים:
- האלמנט
<ResourceURL>מוצהר וכתובת ה-URL של המשאב מוגדרת בתוך האלמנט הזה. האלמנט<ResourceURL>הוא אלמנט חובה. אם מצהירים על הרכיב
<IncludeURL>, צריך להגדיר את כתובת ה-URL של המשאב שרוצים לכלול בתוך הרכיב הזה. הרכיב<IncludeURL>הוא אופציונלי, אבל אם מצהירים עליו, צריך לציין את כתובת ה-URL של המשאב בתוך הרכיב<IncludeURL>.כדי לתקן את הדוגמה 1 שמוצגת למעלה, צריך לכלול את רכיב
<ResourceURL>עם קובץ JavaScript תקין:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> <ResourceURL>jsc://check_var.js</ResourceURL> </Javascript>כדי לתקן את דוגמה 2 שמוצגת למעלה, צריך לכלול קובץ JavaScript תקין ברכיב
<IncludeURL><?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> <ResourceURL>jsc://check_var.js</ResourceURL> <IncludeURL>jsc://js_dependency.js</IncludeURL> </Javascript>