2017-05-08 71 views
0

如果元素在XML中存在多個位置。 然後,很難對特定元素上的數據進行排序(默認情況下,文檔將在第一個元素上排序)。當xpath包含名稱空間前綴時,路徑索引由cts:path-reference識別

我能夠通過定義path-index並將其傳遞給cts:path-reference查詢來解決此問題。

但是如果xpath contains有一個名稱空間前綴(命名空間是爲xml定義的),那麼cts:path-reference無法找到defined path-index

我收到下面的錯誤。

SEARCH-BADORDERBY: (err:FOER0000) Indexes are required to support element, element-attribute, json-property, or field sort specifications

無法理解爲什麼我收到此錯誤。 請幫忙!

+0

您是否已在管理頁面中正確定義'path-index'?您是否在路徑索引配置中使用了XPath,如'/ h:path/h:to/h:xmlElement'?其中h是命名空間前綴 – basari66

+0

與cts:reference()的情況相同,在使用它時,路徑表達式應該具有命名空間前綴。 – basari66

+0

@ rishabhv66是的我已經按照你提到的方式定義了xpath,並且在管理控制檯中爲它創建了一個'path-namespace'。 –

回答

1

各地路徑索引一些好的做法:

  • 確保您使用完全相同的路徑表達式字符串都宣稱索引時,使用它的時候,包括相同的前綴
  • 聲明前綴路徑命名空間至少,可選地在應用服務器級別代替
  • cts:path-reference需要,使用它可以在命名空間綁定傳遞第三個參數

HTH!

相關問題