如何在XPage上配置xe:viewFileItemService来过滤分类视图中的数据?

Pau*_*bia 2 rest dojo datagrid dojox.grid.datagrid xpages

我有一个DocsByUsername分类视图,按用户名排序和分类.对于经过身份验证的用户,我只想在Dojo数据网格中显示其文档.网格需要支持网格编辑,因此我需要使用xe:viewFileItemService读/写服务作为网格的数据源.

我认为使用以下服务配置会相当直接...

    <xe:restService id="restService1" jsId="restServiceObj"
        pathInfo="pathinfo">
        <xe:this.service>
            <xe:viewItemFileService
                viewName="DocsByUsername" var="rsEntry"
                contentType="application/json" defaultColumns="true"
                sortColumn="Username" categoryFilter="#{sessionScope.username}">
            </xe:viewItemFileService>
        </xe:this.service>
    </xe:restService>
Run Code Online (Sandbox Code Playgroud)

当我预览页面并将/ pathinfo附加到url以测试服务时,返回以下错误...

{
   "code":500,
   "text":"Internal Error",
   "message":"",
   "type":"text",
   "data":"java.lang.NullPointerException\r\n\tat 
      ... removed for space ...

}
Run Code Online (Sandbox Code Playgroud)

如果我从xe:viewFileItemService切换到xe:viewJsonService,则会正确返回数据而不会出现错误.

我是否可以不为xe指定分类视图:viewFileItemService?

Knu*_*ann 5

使用参数keys代替categoryFilter.这样可以返回用户名类别的所有文档.

... keys="#{sessionScope.username}">
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Steve Zavocki不久前有一个关于这个问题的博客.

  • 保罗,我最终解决了这个问题,但老实说不记得我做了什么.从那时起我已经切换了工作,但是会尝试找到备份并看看我做了什么来修复它. (3认同)