คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่
เอกสารประกอบเกี่ยวกับ Apigee X. ข้อมูล
NothingToExtract
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]: at least one of URIPath, QueryParam, Header, FormParam, XMLPayload, JSONPayload is mandatory. Revision:[revision_number]; APIProxy:[proxy_name]; Organization:[org_name]; Environment:[env_name].
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
ExtractVariables EV-XML-Age: at least one of URIPath, QueryParam, Header, FormParam, XMLPayload, JSONPayload is mandatory.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรไม่มีองค์ประกอบ URIPath
, QueryParam
, Header
, FormParam
, XMLPayload
หรือ JSONPayload
การทำให้พร็อกซี API ใช้งานได้จะล้มเหลวเนื่องจากไม่มีอะไรให้ดึงข้อมูล
นโยบายการดึงข้อมูลตัวแปรต้องมีองค์ประกอบอย่างน้อย 1 รายการรวมอยู่ในนโยบาย URIPath
, QueryParam
, Header
, FormParam
, XMLPayload
หรือ JSONPayload
ตามที่ระบุไว้ในข้อความแสดงข้อผิดพลาด
การวินิจฉัย
ตรวจสอบนโยบายการดึงข้อมูลตัวแปรที่มีชื่ออยู่ในข้อความแสดงข้อผิดพลาด หากนโยบายไม่มีองค์ประกอบต่อไปนี้เลย: URIPath
, QueryParam
, Header
, FormParam
, XMLPayload
หรือ JSONPayload
นั่นก็คือสาเหตุของข้อผิดพลาด ตัวอย่างเช่น นโยบายการดึงข้อมูลตัวแปรต่อไปนี้ไม่มีองค์ประกอบที่กล่าวไว้ข้างต้น
<ExtractVariables async="false" continueOnError="false" enabled="true" name="EV-XML-Age">
<DisplayName>EV-XML-Age</DisplayName>
<Properties/>
</ExtractVariables>
เนื่องจากไม่มีองค์ประกอบที่จำเป็นใดๆ ในนโยบายการดึงข้อมูลตัวแปร การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านโยบายการแยกตัวแปรมีองค์ประกอบที่จำเป็นอย่างน้อย 1 รายการ ได้แก่ URIPath
, QueryParam
, Header
, FormParam
, XMLPayload
, JSONPayload
เช่น
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ExtractVariables async="false" continueOnError="false" enabled="true" name="EV-XML-Age">
<DisplayName>EV-XML-Age</DisplayName>
<Properties/>
<Source>request</Source>
<XMLPayload>
<Namespaces/>
<Variable name="age" type="integer">
<XPath>/age</XPath>
</Variable>
</XMLPayload>
</ExtractVariables>
NONEmptyPrefixMappedToEmptyURI
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]: Non-empty prefix [prefix_name] cannot be mapped to empty uri.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 3
ExtractVariables EV-XML-Age: Non-empty prefix apigee cannot be mapped to empty uri.
ภาพหน้าจอตัวอย่าง
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากนโยบายการดึงข้อมูลตัวแปรมีคำนำหน้าที่กำหนดไว้ในองค์ประกอบ <Namespace>
ใต้องค์ประกอบ <XMLPayload>
แต่ไม่ได้กำหนด URI ไว้
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่เกิดข้อผิดพลาดและชื่อของคำนำหน้า ซึ่งคุณจะเห็นทั้ง 2 รายการนี้ในข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
EV-XML-Age
และคำนำหน้าคือapigee
ExtractVariables EV-XML-Age: Non-empty prefix apigee cannot be mapped to empty uri.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่าชื่อของคำนำหน้าที่ตั้งไว้ในองค์ประกอบ
<Namespace>
ภายในองค์ประกอบ<XMLPayload>
ตรงกับชื่อคำนำหน้าที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุคำนำหน้าชื่อapigee
ในองค์ประกอบ<Namespace>
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ExtractVariables async="false" continueOnError="false" enabled="true" name="EV-XML-Age"> <DisplayName>EV-XML-Age</DisplayName> <Source clearPayload="false">request</Source> <XMLPayload stopPayloadProcessing="false"> <Namespaces> <Namespace prefix="apigee"></Namespace> <Namespace prefix="gmail">http://mail.google.com</Namespace> </Namespaces> <Variable name="legName" type="string"> <XPath>/apigee:Directions/apigee:route/apigee:leg/apigee:name</Xpath> </Variable> </XMLPayload> </ExtractVariables>
ตรวจสอบว่าองค์ประกอบ
<Namespace>
ที่มีคำนำหน้าที่เจาะจงซึ่งระบุไว้ในขั้นตอนที่ 2 มี URI ที่ถูกต้องหรือไม่ หากไม่มี URI นั่นแสดงว่าเป็นสาเหตุของข้อผิดพลาดในตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่แสดงด้านบน ให้สังเกตว่าไม่มี URI ที่ตรงกับองค์ประกอบ
<Namespace>
ที่มีคำนำหน้าapigee
ดังนั้น คุณจะได้รับข้อผิดพลาดExtractVariables EV-XML-Age: Non-empty prefix apigee cannot be mapped to empty uri.
ความละเอียด
ตรวจสอบว่าองค์ประกอบ <Namespace>
ทั้งหมดที่กำหนดไว้ด้วยคำนำหน้ามี URI ที่สอดคล้องกันในนโยบายการดึงข้อมูลตัวแปร เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError=>"<;false">; enabled=<"true&q>uot; <name="EV-XML-Age">
Di<splayNa>meEV-<XML-Age/DisplayName
Source clearPayl>oad=&<quot;false>"req<uest/Source
XMLPayloa>d stopPayloadProcessi<ng="f>alse"<;
Namespaces
> Namespace prefix=&quo<t;apigee&q>uot;ht<tp://www.ap>igee.<com/Namespace
Namespace prefi>x="g<mail&>quot;http://mail.google.com/Namespace
/Namespaces<
V>ariab<le name=&>quot;<legName&quo>t<; type="stri>n
g"
XPath/apigee:Directions/apigee:route/apigee:leg/apigee:name/Xpath
/Variable
/XMLPayload
/ExtractVariables
DuplicatePrefix
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]: Duplicate prefix [prefix_name].
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 2
ExtractVariables EV-XML-Age: Duplicate prefix apigee.
ภาพหน้าจอตัวอย่าง
สาเหตุ
ข้อผิดพลาดนี้เกิดขึ้นหากนโยบายการดึงข้อมูลตัวแปรมีคำนำหน้าเดียวกันที่กำหนดไว้มากกว่า 1 ครั้งในองค์ประกอบ <Namespace>
ภายในองค์ประกอบ <XMLPayload>
ตัวอย่างเช่น ข้อผิดพลาดนี้เกิดขึ้นเนื่องจากมีการกำหนดคำนำหน้า apigee
2 ครั้งดังที่แสดงด้านล่าง
<Namespace prefix="ap>igee"http://www.<apigee.com>/<Namespace
Namespace prefi>x="apigee"h<ttp://www.>a
pigee.com/Namespace
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่เกิดข้อผิดพลาดและชื่อของคำนำหน้า ซึ่งคุณจะเห็นทั้ง 2 รายการนี้ในข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
EV-XML-Age
และคำนำหน้าคือapigee
ExtractVariables EV-XML-Age: Duplicate prefix apigee.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่าชื่อของคำนำหน้าที่ตั้งไว้ในองค์ประกอบ
<Namespace>
ภายในองค์ประกอบ<XMLPayload>
ตรงกับชื่อคำนำหน้าที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุคำนำหน้าชื่อapigee
ในองค์ประกอบ<Namespace>
ซึ่งตรงกับข้อความแสดงข้อผิดพลาด<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError=>"<;false">; enabled=<"true&q>uot; <name="EV-XML-Age"> Di<splayNa>meEV-<XML-Age/DisplayName Source clearPayl>oad=&qu<ot;false&q>uot;request</Source XMLPayload s>topPayloadProcessing=&<quot;false>" < Namespaces Na>mespace prefix="<gmail">;http://mai<l.google.com/Namespace > Namespace pre<fix=">apigee&<quot;http:/>/www.ap<igee.com/Namespace Namespace prefix=&<quot;>apigee"http://www.apigee.com/Namespace /Nam<espace>s < Variable> name<="legN>ame<" type=">;
string XPath/apigee:Directions/apigee:route/apigee:leg/apigee:name/XPath /Variable /XMLPayload /ExtractVariablesตรวจสอบว่าองค์ประกอบ
<Namespace>
ที่มีคำนำหน้าเฉพาะที่ระบุในขั้นตอนที่ 2 ได้รับการกำหนดมากกว่า 1 ครั้งหรือไม่ หากมีการกำหนดไว้มากกว่า 1 ครั้ง ก็แสดงว่านี่คือสาเหตุของข้อผิดพลาดในตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่แสดงด้านบน สังเกตว่าองค์ประกอบ
<Namespace>
ที่มีคำนำหน้าapigee
ได้รับการกำหนด 2 ครั้ง ดังนั้น คุณจะได้รับข้อผิดพลาดExtractVariables EV-XML-Age: Duplicate prefix apigee.
ความละเอียด
ตรวจสอบว่ามีคำจำกัดความเพียง 1 รายการสำหรับคำนำหน้าแต่ละรายการในองค์ประกอบ <Namespace>
ในนโยบายการแยกตัวแปร เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError=>"<;false">; enabled=<"true&q>uot; <name="EV-XML-Age">
Di<splayNa>meEV-<XML-Age/DisplayName
Source clearPayl>oad=&qu<ot;false&q>uot;request</Source
XMLPayload st>opPayloadProcessing=&<quot;false>"
< Namespaces
N>amespace prefix="<apigee&quo>t;http:<//www.apige>e.com/N<amespace
Namespace prefix=&>quot;gmail&<quot;>http://mail.google.com/Namespace
/Namespaces
< Var>iable n<ame=">;legN<ame" t>y<pe="string&q>u
ot;
XPath/apigee:Directions/apigee:route/apigee:leg/apigee:name/Xpath
/Variable
/XMLPayload
/ExtractVariables
NoXPathsToEvaluate
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]:no xpaths to evaluate in variable name.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 4
ExtractVariables Extract-Variables-1: no xpaths to evaluate in variable name.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรไม่มีองค์ประกอบ <XPath>
ภายในองค์ประกอบ <XMLPayload>
การทำให้พร็อกซี API ใช้งานได้จะล้มเหลวโดยมีข้อผิดพลาดดังที่แสดงไว้ด้านบน
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่ล้มเหลวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-1
ExtractVariables Extract-Variables-1: no xpaths to evaluate in variable name.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่ามีองค์ประกอบ
<XMLPayload>
ที่ไม่มีองค์ประกอบย่อย<XPath>
หรือไม่ ถ้าเป็นเช่นนั้น นี่คือสาเหตุของข้อผิดพลาดลองดูตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่มีเอลิเมนต์
<XMLPayload>
ดังนี้<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t; DisplayNameExtract V>ariable<s-1/Dis>playN<ame Proper>ties/ < Source clea>rPayl<oad="false"request/Source >VariableP<refixapigee>/Variable<Prefix XMLPayload stopPayloadProcessing=>"fal<se"<>/span> < Namespac>e<s/ Variab>l
e name="HostReachable" type="boolean" /Variable /XMLPayload /ExtractVariablesเนื่องจากไม่มีอีลิเมนต์
<XPath>
อยู่ การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านโยบายการดึงข้อมูลตัวแปรมีองค์ประกอบ <XPath>
ที่กำหนดไว้ภายใต้องค์ประกอบ <XMLPayload>
เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t;
DisplayNameExtract V>ariable<s-1/Dis>playN<ame
Proper>ties/
< Source clea>rPayl<oad="false"request/Source
>VariableP<refixapigee>/Variable<Prefix
XMLPayload stopPayloadProcessing=>"false&q<uot;<>/span>
Name<spaces>/
< Variable> name<="Host>R<eachable" ty>p
e="boolean"
XPath/isReachable/XPath
/Variable
/XMLPayload
/ExtractVariables
EmptyXPathExpression
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]: XPath expression is empty in variable name.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 6
ExtractVariables Extract-Variables-1: XPath expression is empty in variable name.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรมีนิพจน์ <XPath>
ที่ว่างเปล่าภายในองค์ประกอบ <XMLPayload>
การทำให้พร็อกซี API ใช้งานได้จะล้มเหลว
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่ล้มเหลวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-1
ExtractVariables Extract-Variables-1: no xpaths to evaluate in variable name.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่ามีเอลิเมนต์
<XMLPayload>
ที่มีองค์ประกอบย่อย<XPath>
ที่ว่างเปล่าหรือไม่ ถ้าเป็นเช่นนั้น นี่คือสาเหตุของข้อผิดพลาดลองดูตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่มีเอลิเมนต์
<XMLPayload>
ดังนี้<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t; DisplayNameExtract V>ariable<s-1/Dis>playN<ame Proper>ties/ < Source clea>rPayl<oad="false"request/Source >VariableP<refixapigee>/Variable<Prefix XMLPayload stopPayloadProc>essing="<false><"> <Namespace>s/ < Varia>b<le name="add>r
ess" type="string" XPath/XPath /Variable /XMLPayload /ExtractVariablesเนื่องจากมีองค์ประกอบ
<XPath>
ที่ว่างเปล่าภายในองค์ประกอบ<XMLPayload>
การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านโยบายการแยกตัวแปรมีองค์ประกอบ <XPath>
ที่ไม่ว่างเปล่าและถูกต้องซึ่งกำหนดไว้ภายใต้องค์ประกอบ <XMLPayload>
เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t;
DisplayNameExtract V>ariable<s-1/Dis>playN<ame
Proper>ties/
< Source clea>rPayl<oad="false"request/Source
>VariableP<refixapigee>/Variable<Prefix
XMLPayload stopPayloadProc>essing="<false>"
< > Namespac<es/
> Va<riable name>=<"address&quo>t
; type="string"
XPath/address/XPath
/Variable
/XMLPayload
/ExtractVariables
NoJSONPathsToEvaluate
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]:no jsonpaths to evaluate in variable name.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 6
ExtractVariables Extract-Variables-1: no jsonpaths to evaluate in variable name.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรไม่มีองค์ประกอบ <JSONPath>
ภายในองค์ประกอบ <JSONPayload>
การทำให้พร็อกซี API ใช้งานได้จะล้มเหลวโดยมีข้อผิดพลาดดังที่แสดงไว้ด้านบน
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่ล้มเหลวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-1
ExtractVariables Extract-Variables-1: no jsonpaths to evaluate in variable name.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่ามีองค์ประกอบ
<JSONPayload>
ที่ไม่มีองค์ประกอบย่อย<JSONPath>
ที่จำเป็นหรือไม่ ถ้าเป็นเช่นนั้น นี่คือสาเหตุของข้อผิดพลาดลองดูตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่มีเอลิเมนต์
<JSONPayload>
ดังนี้<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t; Disp>layNameEx<tract Variables-1/Dis>playName < Prope>rties</ JSONPa>yload< Variable name=&quo>t;title<"<>/span> < /Variable > /JS<ONPayload S>o<urce clearPayload>=
"false"request/Source VariablePrefixapigee/VariablePrefix /ExtractVariablesเนื่องจากไม่ได้ระบุองค์ประกอบย่อย
<JSONPath>
ภายใต้องค์ประกอบ<JSONPayload>
การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านโยบายการดึงข้อมูลตัวแปรมีองค์ประกอบ <JSONPath>
ที่กำหนดไว้ภายใต้องค์ประกอบ <JSONPayload>
เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t;
Disp>layNameEx<tract Variables-1/Dis>playName
<Properti>es/
JSON<Payload
> Va<riable na>me=&q<uot;title&qu>ot;
< JSONPath$.book.t>itle/JS<ONPath<>/span>
< /Variable
> /JS<ONPayload
S>o<urce clearPayload>=
"false"request/Source
VariablePrefixapigee/VariablePrefix
/ExtractVariables
EmptyJSONPathExpression
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] ExtractVariables [policy_name]: JSONPath expression is empty in variable name.
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 6
ExtractVariables Extract-Variables-1: JSONPath expression is empty in variable name.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรมีนิพจน์ <JSONPath>
ที่ว่างเปล่าภายในองค์ประกอบ <JSONPayload>
การทำให้พร็อกซี API ใช้งานได้จะล้มเหลว
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่ล้มเหลวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-1
ExtractVariables Extract-Variables-1: JSONPath expression is empty in variable name.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่ามีองค์ประกอบ
<JSONPayload>
ที่มีองค์ประกอบย่อย<JSONPath>
ที่ว่างเปล่าหรือไม่ ถ้าเป็นเช่นนั้น นี่คือสาเหตุของข้อผิดพลาดลองดูตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่มีเอลิเมนต์
<JSONPayload>
ดังนี้<ExtractVariables async="false" continueOnError="false" enabled="true&qu>ot; name=<"Extra>ct-Variables-1"<; Di>splayName<Extract Var>iables-1/<DisplayName> Prop<erties/ JSONPayload Varia>ble name="ac<count_nu><mber">; type="<integer&q>uot; < >JSONPath/<JSONPath /Varia>ble < /J>SONPayloa<d Sour>ce cle<arPayload=">;fals<e"request/So>u
rce VariablePrefixapigee/VariablePrefix /ExtractVariablesเนื่องจากมีองค์ประกอบ
<JSONPath>
ที่ว่างเปล่าภายในองค์ประกอบ<JSONPayload>
การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านโยบายการแยกตัวแปรมีองค์ประกอบ <JSONPath>
ที่ไม่ว่างเปล่าและถูกต้องซึ่งกำหนดไว้ภายใต้องค์ประกอบ <JSONPayload>
เช่น
<ExtractVariables async="false" continueOnError="false" enabled="true&qu>ot; n<ame="E>xtract-Variables-1&<quot;
Di>splay<NameExtract> Vari<ables-1/Dis>playName
< Properties/
JSONPayload
Varia>ble name=&qu<ot;accou>nt_number" <type=&quo>t;integer<"
> < JSONPath>$.acc<ount.number/JSONPath
> /Vari<able
> /JS<ONPayload
>Source< clearPayload=&>q<uot;false"re>q
uest/Source
VariablePrefixapigee/VariablePrefix
/ExtractVariables
MissingName
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] Error occurred while validation of bean [policy_name].xml Reason: - Required attribute name is missing in [element_name]
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 6
Error occurred while validation of bean Extract-Variables-1.xml. Reason: - Required attribute name is missing in Variable
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรไม่มีแอตทริบิวต์ name
ในองค์ประกอบนโยบายใดๆ เช่น QueryParam
, Header
, FormParam
หรือ Variable
ซึ่งจําเป็น การติดตั้งใช้งานพร็อกซี API จะล้มเหลว
ตัวอย่างเช่น ข้อผิดพลาดนี้จะเกิดขึ้นหากแอตทริบิวต์ name
ขาดหายไปในองค์ประกอบ Variable
การวินิจฉัย
ระบุชื่อนโยบายการแยกตัวแปรที่เกิดข้อผิดพลาดและองค์ประกอบที่ไม่มีแอตทริบิวต์
name
คุณดูรายการเหล่านี้ในข้อความแสดงข้อผิดพลาดได้ ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือExtract-Variables-1
และชื่อองค์ประกอบคือVariable
Error occurred while validation of bean Extract-Variables-1.xml. Reason: - Required attribute name is missing in Variable
ใน XML ของนโยบายการดึงข้อมูลตัวแปรที่ล้มเหลว ให้ตรวจสอบว่าองค์ประกอบทั้งหมดที่ใช้ชื่อซึ่งกำหนดจากขั้นตอนที่ 1 ด้านบนมีแอตทริบิวต์
name
หากมีองค์ประกอบที่แอตทริบิวต์ name ขาดหายไป นั่นก็คือสาเหตุของข้อผิดพลาดตัวอย่างเช่น นโยบายการดึงข้อมูลตัวแปรต่อไปนี้มีการกำหนดองค์ประกอบ
<Variable>
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t; DisplayNameExtra>ct Variab<les-1/D>isplayName Pr<operties>/ < Variable> <type="boolea>n
" Pattern{isAccountActive}/Pattern /Variable /ExtractVariablesโปรดสังเกตว่าแอตทริบิวต์
name
ขาดหายไปในองค์ประกอบVariable
การทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านโยบายการดึงข้อมูลตัวแปรมีแอตทริบิวต์ name
ที่จำเป็นสำหรับองค์ประกอบ QueryParam
, Header
, FormParam
หรือ Variable
เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t;
DisplayNameExtract Variables-1/Display>Name
<Propert>ies/
Variable< name=&q>uot;a<ccount_ac>t<ive" type=&q>u
ot;boolean"
Pattern{isAccountActive}/Pattern
/Variable
/ExtractVariables
PatternWithoutVariable
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Saving Revision [revision_number] Pattern [pattern] should have at least one variable in ExtractVariables stepDefinition [policy_name]
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Saving Revision 7
Pattern /a/b/ should have at least one variable in ExtractVariables stepDefinition ExtractVariables-1.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรไม่ได้ระบุตัวแปรภายในองค์ประกอบ <Pattern>
การติดตั้งใช้งานพร็อกซี API จะล้มเหลว องค์ประกอบ <Pattern>
ต้องการชื่อตัวแปรที่ระบบจะจัดเก็บข้อมูลที่แยกออกมา
การวินิจฉัย
ระบุชื่อนโยบายการดึงข้อมูลตัวแปรที่เกิดข้อผิดพลาดและรูปแบบที่ไม่มีตัวแปร คุณดูรายการเหล่านี้ได้จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-1
และชื่อองค์ประกอบคือ/a/b
Pattern /a/b/ should have at least one variable in ExtractVariables stepDefinition ExtractVariables-1.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ยืนยันว่ารูปแบบที่ตั้งไว้ในองค์ประกอบ
<Pattern>
ตรงกับรูปแบบที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุรูปแบบ/a/b
ซึ่งตรงกับข้อความแสดงข้อผิดพลาดลองดูตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่มีองค์ประกอบ
<Pattern>
3 รายการต่อไปนี้<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVaria>bles< name=>"E<xtractV>aria<bles-1&>quot; < Sourcerequest/Source > URIPath < Patte>rn igno<reCase="true"/a>/{pat<hSeg}/Pa>ttern < Pattern ignoreCase=&>quot;true"/<a/b//Pat>tern< P>atte<rn ignoreCase=>"true<"/a/b/c/{p>a<thSeg}/Pattern >
/URIPath VariablePrefixurirequest/VariablePrefix /ExtractVariablesตรวจสอบว่าองค์ประกอบ
<Pattern>
ที่ระบุในขั้นตอนที่ 2 ไม่มีตัวแปรหรือไม่ ตัวแปร ต้องอยู่ในวงเล็บปีกกา หากรูปแบบไม่มีตัวแปร นั่นเป็นสาเหตุของข้อผิดพลาดองค์ประกอบ
<Pattern>
ที่มีรูปแบบ /a/b ไม่มีตัวแปร ดังนั้นการทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว<Pattern ignoreCase=">true&<quot;/a/>b/
/Pattern
ความละเอียด
ตรวจสอบว่าองค์ประกอบ <Pattern>
มีตัวแปร (ชื่อที่เข้ารหัสแบบหยิก
วงเล็บปีกกา) เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVaria>bles< name=>"E<xtractV>aria<bles-1&>quot;
< Sourcerequest/Source
> URIPath
< Patte>rn igno<reCase="true"/a>/{pathSeg}/Pat<tern
> Patt<ern ignoreCase="true>"/a/b/{path<Seg}/Pat>tern<
P>atte<rn ignoreCase=>"true<"/a/b/c/{p>a<thSeg}/Pattern
>
/URIPath
VariablePrefixurirequest/VariablePrefix
/ExtractVariables
CannotBeConvertedToNodeset
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Deploying Revision [revision_number] ExtractVariables [policy_name]: Result of xpath [policy_name] cannot be converted to nodeset. Context Revision:[revision_number]; APIProxy:[proxy_name]; Organization:[org_name]; Environment:[env_name].
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 4 to test
ExtractVariables Extract-Variables-1: Result of xpath 123 cannot be converted to nodeset. Context Revision:4;APIProxy:EV-XML;Organization:aprabhashankar-eval;Environment:test.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากนโยบายการดึงข้อมูลตัวแปรมีนิพจน์ <XPath>
ซึ่งกำหนดประเภท <Variable>
เป็น nodeset แต่แปลงนิพจน์เป็น Nodeset ไม่ได้ การทำให้พร็อกซี API ใช้งานได้จะล้มเหลว
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่เกิดข้อผิดพลาดและ XPath ที่แปลงเป็น Nodeset ไม่ได้ ซึ่งคุณจะเห็นทั้ง 2 รายการนี้ในข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-1
และ XPath คือ123
ExtractVariables Extract-Variables-1: Result of xpath 123 cannot be converted to nodeset. Context Revision:4;APIProxy:EV-XML;Organization:aprabhashankar-eval;Environment:test.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่าชุด XPath ในองค์ประกอบ
<XPath>
ตรงกับ XPath ที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุเป็น 123
ซึ่งจะตรงกับสิ่งที่อยู่ในข้อความแสดงข้อผิดพลาด<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t; DisplayNameExtract V>ariable<s-1/Dis>playN<ame Proper>ties/ < Source clear>Paylo<ad="false"request/Source V>ariablePr<efixvisitor>/Variable<Prefix XMLPayload stopPayloadP>rocessing=&qu<ot;fa>lse<"> <Namespace>s/ < Varia>b<le name="age>&
quot; type="nodeset" XPath123/XPath /Variable /XMLPayload /ExtractVariablesตรวจสอบประเภทขององค์ประกอบ
<Variable>
ที่สอดคล้องกับ<XPath>
ที่ระบุไว้ในขั้นตอนที่ 2 ด้านบน หากประเภท<Variable>
คือnodeset
นั่นเป็นสาเหตุของข้อผิดพลาดโปรดสังเกตว่านิพจน์
<XPath>
คือ123
ในตัวอย่างนโยบายการดึงข้อมูลตัวแปร<XPath>123</XPath>
แปลงนิพจน์
123
เป็น Nodeset ไม่ได้ ดังนั้นการทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว
ความละเอียด
ตรวจสอบว่านิพจน์ <XPath>
ที่ใช้ในนโยบายการแยกตัวแปรสามารถแปลงเป็น Nodeset ได้ หากกำหนดประเภท <Variable>
เป็น Nodeset เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError="fal>se&qu<ot; enabled>="true" n<ame="Ex>tract<-Variables->1&quo<t;
DisplayNameExtract V>ariable<s-1/Dis>playN<ame
Proper>ties/
< Source clear>Paylo<ad="false"request/Source
V>ariablePr<efixvisitor>/Variable<Prefix
XMLPayload stopPayloadP>rocessing=&qu<ot;fa>lse"
< >Namespace<s/
> Var<iable name=>&<quot;age" ty>p
e="nodeset"
XPath/visitor/age/XPath
/Variable
/XMLPayload
/ExtractVariables
InvalidPattern
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API จะล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดต่อไปนี้
Error Deploying Revision [revision_number]
Pattern [pattern] is invalid in ExtractVariables stepDefinition [policy_name]
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 18 to test
Pattern {*} is invalid in ExtractVariables stepDefinition ExtractVariables-2.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากคําจํากัดความองค์ประกอบ <Pattern>
ไม่ถูกต้องในองค์ประกอบใดก็ตาม เช่น URIPath
, QueryParam
, Header
, FormParam
, XMLPayload
หรือ JSONPayload
ภายในนโยบายการดึงข้อมูลตัวแปร การติดตั้งใช้งานพร็อกซี API จะล้มเหลว
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่ล้มเหลวจากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
Extract-Variables-2
Pattern {*} is invalid in ExtractVariables stepDefinition ExtractVariables-2.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่ามีองค์ประกอบเหล่านี้อยู่หรือไม่และรวมองค์ประกอบ
<Pattern>
URIPath
,QueryParam
,Header
,FormParam
,XMLPayload
หรือJSONPayload
ตัวอย่างเช่น นโยบายการดึงข้อมูลตัวแปรที่มีองค์ประกอบ
<Pattern>
ภายในองค์ประกอบ<QueryParam>
มีดังนี้<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVaria>bles <name=">ExtractVariables-2<" D>ispla<yNameE>xtractV<ariable>s-2/D<isplayName Sourcer>equest/So<urce QueryParam name=>&qu<ot;code&>quot;< Pa>ttern< ignoreCase=&q>uot;true&<quot;{*}/Patter>n< /QueryParam >
VariablePrefixqueryinfo/VariablePrefix /ExtractVariablesตรวจสอบคำจำกัดความขององค์ประกอบ
<Pattern>
แต่ละรายการ หากมีองค์ประกอบ<Pattern>
ที่มีคําจํากัดความไม่ถูกต้อง นั่นก็คือสาเหตุของข้อผิดพลาดในตัวอย่างนโยบายการดึงข้อมูลตัวแปรที่แสดงด้านบน สังเกตว่าคําจํากัดความ
<Pattern>
ภายในองค์ประกอบ<QueryParam>
ไม่ถูกต้อง ดังนั้นการทำให้พร็อกซี API ใช้งานได้จึงล้มเหลว ดูเพิ่มเติม เกี่ยวกับการจับคู่และการสร้างตัวแปร<Pattern ignoreCase=">tru<e"{>*}
/Pattern
ความละเอียด
ตรวจสอบว่าคำจำกัดความขององค์ประกอบ <Pattern>
ภายในองค์ประกอบ URIPath
, QueryParam
, Header
, FormParam
, XMLPayload
หรือ JSONPayload
ในนโยบายการดึงข้อมูลตัวแปรนั้นถูกต้อง เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVaria>bles <name=">ExtractVariables-2"
DisplayNa<meExtract a >value< from >a query< parame>ter/D<isplayName
Sourcer>equest/So<urce
QueryParam name=>"<code&quo>t;
< Patte>rn ig<noreCase=">;true&quo<t;{code}/Patter>n<
/QueryParam
>
VariablePrefixqueryinfo/VariablePrefix
/ExtractVariables
ดูข้อมูลเพิ่มเติมที่เกี่ยวกับการจับคู่และการสร้างตัวแปร
XPathCompilationFailed
ข้อความแสดงข้อผิดพลาด
การทำให้พร็อกซี API ใช้งานได้ผ่าน Edge UI หรือ Edge Management API ล้มเหลว ด้วยข้อความแสดงข้อผิดพลาดนี้
Error Deploying Revision [revision_number] ExtractVariables [policy_name]: Failed to compile xpath [xpath] Context Revision:[revision_number]; APIProxy:[proxy_name]; Organization:[org_name]; Environment:[env_name].
ตัวอย่างข้อความแสดงข้อผิดพลาด
Error Deploying Revision 1 to test
ExtractVariables EV-XML-Age: Failed to compile xpath /apigee:Directions/apigee:route/apigee:leg/apigee:name. Context Revision:1;APIProxy:EV-XML;Organization:aprabhashankar-eval;Environment:test.
ภาพหน้าจอตัวอย่าง
สาเหตุ
หากคำนำหน้าหรือค่าที่ใช้ในองค์ประกอบ <XPath>
ไม่ได้เป็นส่วนหนึ่งของเนมสเปซที่ประกาศในนโยบายการดึงข้อมูลตัวแปร การทำให้พร็อกซี API ใช้งานได้จะล้มเหลว
คุณสามารถดูข้อมูลเพิ่มเติมเกี่ยวกับเนมสเปซ, XPath และคำนำหน้าในเนมสเปซ XML และผลกระทบที่ส่งผลต่อ XPath และ MRSS
การวินิจฉัย
ระบุนโยบายการดึงข้อมูลตัวแปรที่เกิดข้อผิดพลาดและ XPath ที่ไม่สามารถคอมไพล์ได้ ซึ่งคุณจะเห็นทั้ง 2 รายการนี้ในข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ
EV-XML-Age
และ xpath คือ/apigee:Directions/apigee:route/apigee:leg/apigee:name
ExtractVariables EV-XML-Age: Failed to compile xpath /apigee:Directions/apigee:route/apigee:leg/apigee:name. Context Revision:1;APIProxy:EV-XML;Organization:aprabhashankar-eval;Environment:test.
ใน XML ของนโยบายการแยกตัวแปรที่ล้มเหลว ให้ตรวจสอบว่าชุด XPath ในองค์ประกอบ
<XPath>
ตรงกับ XPath ที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุเป็น /apigee:Directions/apigee:route/apigee:leg/apigee:name
ซึ่งจะตรงกับสิ่งที่อยู่ในข้อความแสดงข้อผิดพลาด<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"? ExtractVariables async="false" continueOnError=>&qu<ot;false&qu>ot; enable<d="true>&qu<ot; name="EV-XML-Age&q>uot; <Display>Nam<eEV-XML-Age/DisplayName Source clearPa>yload<="fal>se"r<equest/Source XMLPaylo>ad stopPayloadProcessi<ng="f>alse&<quot; N>amesp<aces Namespace prefix="g>mail&<quot;>http://mail.google.com/Namespace /Namespaces V<ariabl>e name=&q<uot;legNa>me&<quot; type=>&<quot;string">
XPath/apigee:Directions/apigee:route/apigee:leg/apigee:name/XPath /Variable /XMLPayload /ExtractVariablesตรวจสอบองค์ประกอบ
<Namespaces>
และ<XPath>
ในนโยบายการดึงข้อมูลตัวแปร หาก<XPath>
ที่เจาะจงซึ่งระบุไว้ในข้อความแสดงข้อผิดพลาดใช้คำนำหน้าหรือค่าที่ไม่ได้เป็นส่วนหนึ่งของเนมสเปซที่ประกาศในนโยบายการดึงข้อมูลตัวแปร นั่นก็คือสาเหตุของข้อผิดพลาดโปรดสังเกตว่า
<XPath>
ที่เจาะจงจะใช้คำนำหน้าapigee
ในตัวอย่างนโยบายตัวแปรการดึงข้อมูล<XPath>/apigee:Directions/apigee:route/apigee:leg/apigee:name</XPath>
แต่ไม่ได้กำหนดคำนำหน้า
apigee
ในองค์ประกอบ<Namespace>
ใดๆ ดังนั้น การคอมไพล์<XPath>
ล้มเหลวจนทำให้การทำให้ใช้งานได้ล้มเหลว
ความละเอียด
ตรวจสอบว่าได้ประกาศเนมสเปซทั้งหมดที่ใช้ในองค์ประกอบ <XPath>
ในนโยบายการดึงข้อมูลตัวแปร เช่น
<?xml version="1.0" encoding="UTF-8&quo>t<; standalone="yes"?
ExtractVariables async="false" continueOnError=>&qu<ot;false&qu>ot; enable<d="true>&qu<ot; name="EV-XML-Age&q>uot;
<Display>Nam<eEV-XML-Age/DisplayName
Source clearPa>yload<="fal>se"r<equest/Source
XMLPayloa>d stopPayloadProcessi<ng="f>alse"<;
Namespaces
> Namespace prefix=&quo<t;apigee&q>uot;h<ttp://www.a>pigee<.com/Namespace
Namespace pref>ix="<gmail>"http://mail.google.com/Namespace
/Namespaces<
V>ariab<le name=&>quo<t;legName&q>u<ot; type="st>r
ing"
XPath/apigee:Directions/apigee:route/apigee:leg/apigee:name/XPath
/Variable
/XMLPayload
/ExtractVariables