מוצג המסמך של 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>
מצוין כפי שמוצג בהמשך, הפריסה של שרת ה-proxy ל-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 ב-Proxy הספציפי ל-API שבו התרחש הכשל. אם יש מדיניות 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
והיא לא תקינה, ולכן הפריסה של שרת ה-proxy ל-API נכשלה ומוצגת השגיאה: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
. במקרה כזה, היקף קובצי המקור הוא בשרת ה-proxy ל-API.
בממשק המשתמש של Edge, קובצי המקור של JavaScript מופיעים בקטע jsc בקטע Scripts שבחלונית Navigator של עורך ה-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, מבצעים את אחת מהפעולות הבאות:
- בודקים אם הקובץ הזה נמצא בקטע 'סקריפטים' בשרת ה-proxy בממשק המשתמש של Edge.
- מורידים את חבילת ה-API של ה-Proxy ומחפשים אם הקובץ קיים.
- אם הקובץ הוא לא חלק מחבילת ה-API הספציפית Proxy, צריך לבדוק אם הוא קיים ברמת הארגון או הסביבה. אפשר להשתמש ב-Resource Files API כדי לבצע את הבדיקה.
אם הקובץ לא קיים ברמת ה-API, ארגון או Proxy, זו הסיבה לשגיאה.
בדוגמה שלמעלה, חשוב לזכור שהשם הלא חוקי של קובץ JavaScript הוא
dependent_js.js
. בצילום המסך הבא תוכלו לראות שהקובץ שצוין במדיניות בנושא כתובת URL של משאב לא מופיע בקטע 'סקריפטים'. לכן הוא לא חלק מ-Proxy ל-API. אם גם הקובץ לא קיים ברמת הארגון או הסביבה, הפריסה של שרת ה-proxy ל-API תיכשל ותוצג השגיאה:Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
- כדי לבדוק אם הקובץ הוא חלק מחבילת ה-API הספציפית Proxy, מבצעים את אחת מהפעולות הבאות:
רזולוציה
יש לוודא שקובצי ה-JavaScript שמצוינים ברכיבים <ResourceURL>
ו-<IncludeURL>
מפנים לקובץ חוקי שקיים ברמת שרת ה-API, ברמת הארגון או ברמת הסביבה.
כדי לתקן את מדיניות JavaScript לדוגמה שמוצגת למעלה, צריך להוסיף את הקובץ dependent_js.js
לחבילת ה-API של ה-Proxy. בצילום המסך הבא אפשר לראות שקובצי ה-JavaScript שצוינו ברכיבי <ResourceURL>
ו-<IncludeURL>
מוצגים בקטע 'סקריפטים' בחבילת ה-proxy ל-API.
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 ב-Proxy הספציפי ל-API שבו התרחש הכשל. אם יש מדיניות 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
והוא לא חוקי, הפריסה של שרת ה-proxy ל-API נכשלה ומוצגת השגיאה: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>
לא הוצהר, הפריסה של שרת ה-proxy ל-API נכשלה ומוצגת השגיאה: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 של המשאב, הפריסה של שרת ה-proxy ל-API נכשלת עם השגיאה:
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>