2017-03-13 46 views
0

我想在XPage上創建一個FilteringSelect元素。 我希望該字段是可編輯的 - 能夠輸入以過濾th值。 應使用Rest服務填充字段值。 我已成功創建了dojo.data.viewJsonService RestService。XPages FilteringSelect不工作 - 無法解析'dojo.data.viewJsonService'的構造函數

我的問題是FilteringSelect字段。 該字段的行爲類似於簡單的組合框,並且不支持輸入文本以過濾值。另外,FilteringSelect始終爲空。

我創建了第二個包含靜態值「djFilteringSelect1」的FilteringSelect,該字段也表現得像一個簡單的組合框。

我在做什麼錯?

我附上我的代碼如下。

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" 
    xmlns:xe="http://www.ibm.com/xsp/coreex" dojoForm="true" 
    dojoParseOnLoad="true" dojoTheme="true"> 
    <xp:this.data> 
     <xp:dominoDocument var="document1" formName="gridAsset"> 
     </xp:dominoDocument> 
    </xp:this.data> 
    <xp:this.resources> 
     <xp:dojoModule name="dijit.form.FilteringSelect"></xp:dojoModule> 
    </xp:this.resources> 

    <xe:restService id="objectRest" jsId="objectRestStore" 
     pathInfo="objectRestPath"> 
     <xe:this.service> 
      <xe:viewJsonService count="100" viewName="objects" 
       defaultColumns="true" var="rowObjects" 
       dojoType="dojo.data.viewJsonService"> 
       <xe:this.columns> 
        <xe:restViewColumn columnName="1" 
         name="GenObjekt"> 
        </xe:restViewColumn> 
       </xe:this.columns> 
      </xe:viewJsonService> 
     </xe:this.service> 
    </xe:restService> 

    <xe:djFilteringSelect id="djfsObject" trim="true" 
     promptMessage="Search" 
     invalidMessage="Not found, try again" 
     store="objectRestStore" pageSize="10" searchAttr="GenObjekt" 
     value="#{document1.ObjAnm}"> 
    </xe:djFilteringSelect> 

    <xe:djFilteringSelect id="djFilteringSelect1"> 
     <xp:selectItem itemLabel="Acai"></xp:selectItem> 
     <xp:selectItem itemLabel="Apple"></xp:selectItem> 
     <xp:selectItem itemLabel="Apricot"></xp:selectItem> 
     <xp:selectItem itemLabel="Artichoke"></xp:selectItem> 
     <xp:selectItem itemLabel="Asparagus"></xp:selectItem> 
     <xp:selectItem itemLabel="Avocado"></xp:selectItem> 
    </xe:djFilteringSelect> 
</xp:view> 

正如Per Henrik Lausten指出的那樣(謝謝!我在瀏覽器控制檯中收到錯誤消息。見下文。

dojo/parser::parse() error Error: Unable to resolve constructor for: 'dojo.data.viewJsonService' 
    at Object.<anonymous> (xspClientDojo.js:5) 
    at Object.$DDSY_ [as map] (dojo.js:15) 
    at Object.$DDSu_ [as _instantiate] (xspClientDojo.js:5) 
    at xspClientDojo.js:5 
    at _45c (dojo.js:15) 
    at Promise.then._469.then (dojo.js:15) 
    at Object.$DDSz_ [as parse] (xspClientDojo.js:5) 
    at dojo.js:15 
    at Function.$DDcf_ [as _onQEmpty] (dojo.js:15) 
    at _3ba (dojo.js:15) 
(anonymous) @ xspClientDojo.js:5 
+0

您是否在瀏覽器控制檯中看到任何錯誤(包括JS錯誤和404錯誤)? –

+0

Hi @PerHenrikLausten!謝謝回覆!我可以加載到https:// [domain]/[path] /database.nsf/filteringSelect.xsp/objectRestPath的RestService,但是頁面上出現https:// [domain]/[path] /database.nsf/filteringSelect.xsp! 'dojo/parser :: parse()error錯誤:無法解析對象的構造函數:dojo.data.viewJsonService 。 (xspClientDojo.js:5) ... (匿名)@ xspClientDojo.js:5' – Kermit

回答

0

與XPages Extension Library演示數據庫中的REST服務演示頁交叉引用,與OpenNTF上的擴展庫下載一起打包。它看起來像缺少資源區域中的dojo模塊。

+0

謝謝!我將研究演示數據庫。我已經嘗試在XPage中包含Dojo模塊,但仍然出現相同的錯誤。 :/ – Kermit

相關問題