我在xpages ViewPanel中遇到了搜索问题。我有以下ViewPanel
<xp:viewPanel rows="7" id="viewPanel1">
<xp:this.data>
<xp:dominoView var="view1"
databaseName="myServer!!myDbPath"
viewName="suppliers" search="*my_keyword*">
</xp:dominoView>
</xp:this.data>
<xp:viewColumn columnName="Name"
id="viewColumn1">
<xp:viewColumnHeader value="Name" id="viewColumnHeader1">
</xp:viewColumnHeader>
</xp:viewColumn>
</xp:viewPanel>
视图面板显示另一台服务器的文档。有一个非常简单的FTSearch(我甚至在这里关闭动态搜索进行测试)。我收到了一个错误:
NotesException: Notes error: You are not authorized to perform that operation
lotus.domino.local.View.NFTSearchSorted(Native Method)
lotus.domino.local.View.FTSearchSorted(Unknown Source)
如果我关闭搜索,我会在面板中看到文档(因此它确认我有对数据库和文档的ACL访问权限)。当我打开搜索时,这会改变。 我做错了什么?
这是完整的堆栈。
com.ibm.xsp.FacesExceptionEx: Notes error: You are not authorized to perform that operation
com.ibm.xsp.model.domino.viewnavigator.AbstractViewCollectionNavigator.readEntries(AbstractViewCollectionNavigator.java:101)
com.ibm.xsp.model.domino.wrapped.DominoViewEntryArray.readEntries(DominoViewEntryArray.java:104)
com.ibm.xsp.model.domino.DominoViewDataContainer.readViewEntries(DominoViewDataContainer.java:548)
com.ibm.xsp.model.domino.DominoViewDataContainer.getRowCount(DominoViewDataContainer.java:527)
com.ibm.xsp.model.domino.DominoViewDataModel.getRowCount(DominoViewDataModel.java:109)
com.ibm.xsp.model.TabularDataModel.isRowAvailable(TabularDataModel.java:96)
javax.faces.component.UIData.isRowAvailable(UIData.java:300)
javax.faces.component.UIData.setRowIndex(UIData.java:445)
com.ibm.xsp.component.UIDataEx.setRowIndex(UIDataEx.java:403)
com.ibm.xsp.renderkit.html_extended.DataTableRendererEx.encodeTabularDataModelRows(DataTableRendererEx.java:1433)
com.ibm.xsp.renderkit.html_extended.DataTableRendererEx.encodeTabularDataModelChildren(DataTableRendererEx.java:1416)
com.ibm.xsp.renderkit.html_extended.DataTableRendererEx.encodeChildren(DataTableRendererEx.java:1388)
com.ibm.xsp.renderkit.ReadOnlyAdapterRenderer.encodeChildren(ReadOnlyAdapterRenderer.java:162)
com.ibm.xsp.renderkit.html_extended.ViewPanelRenderer.encodeBegin(ViewPanelRenderer.java:412)
com.ibm.xsp.renderkit.ReadOnlyAdapterRenderer.encodeBegin(ReadOnlyAdapterRenderer.java:146)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:956)
javax.faces.component.UIData.encodeBegin(UIData.java:788)
com.ibm.xsp.component.UIDataEx.encodeBegin(UIDataEx.java:425)
com.ibm.xsp.component.UIViewPanel.encodeBegin(UIViewPanel.java:288)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:841)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.component.UIViewRootEx._renderView(UIViewRootEx.java:1317)
com.ibm.xsp.component.UIViewRootEx.renderView(UIViewRootEx.java:1255)
com.ibm.xsp.application.ViewHandlerExImpl.doRender(ViewHandlerExImpl.java:651)
com.ibm.xsp.application.ViewHandlerExImpl._renderView(ViewHandlerExImpl.java:321)
com.ibm.xsp.application.ViewHandlerExImpl.renderView(ViewHandlerExImpl.java:336)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:103)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:120)
com.ibm.xsp.controller.FacesControllerImpl.render(FacesControllerImpl.java:270)
com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:261)
com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:157)
com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160)
com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138)
com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)
com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:576)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFComponentModule.java:1335)
com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:853)
com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:796)
com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:565)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1319)
com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:662)
com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:482)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:357)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:313)
com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
NotesException: Notes error: You are not authorized to perform that operation
lotus.domino.local.View.NFTSearchSorted(Native Method)
lotus.domino.local.View.FTSearchSorted(Unknown Source)
com.ibm.xsp.model.domino.viewnavigator.FTViewNavigatorEx.createCollection(FTViewNavigatorEx.java:74)
com.ibm.xsp.model.domino.viewnavigator.AbstractViewCollectionNavigator.readEntries(AbstractViewCollectionNavigator.java:76)
com.ibm.xsp.model.domino.wrapped.DominoViewEntryArray.readEntries(DominoViewEntryArray.java:104)
com.ibm.xsp.model.domino.DominoViewDataContainer.readViewEntries(DominoViewDataContainer.java:548)
com.ibm.xsp.model.domino.DominoViewDataContainer.getRowCount(DominoViewDataContainer.java:527)
com.ibm.xsp.model.domino.DominoViewDataModel.getRowCount(DominoViewDataModel.java:109)
com.ibm.xsp.model.TabularDataModel.isRowAvailable(TabularDataModel.java:96)
javax.faces.component.UIData.isRowAvailable(UIData.java:300)
javax.faces.component.UIData.setRowIndex(UIData.java:445)
com.ibm.xsp.component.UIDataEx.setRowIndex(UIDataEx.java:403)
com.ibm.xsp.renderkit.html_extended.DataTableRendererEx.encodeTabularDataModelRows(DataTableRendererEx.java:1433)
com.ibm.xsp.renderkit.html_extended.DataTableRendererEx.encodeTabularDataModelChildren(DataTableRendererEx.java:1416)
com.ibm.xsp.renderkit.html_extended.DataTableRendererEx.encodeChildren(DataTableRendererEx.java:1388)
com.ibm.xsp.renderkit.ReadOnlyAdapterRenderer.encodeChildren(ReadOnlyAdapterRenderer.java:162)
com.ibm.xsp.renderkit.html_extended.ViewPanelRenderer.encodeBegin(ViewPanelRenderer.java:412)
com.ibm.xsp.renderkit.ReadOnlyAdapterRenderer.encodeBegin(ReadOnlyAdapterRenderer.java:146)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:956)
javax.faces.component.UIData.encodeBegin(UIData.java:788)
com.ibm.xsp.component.UIDataEx.encodeBegin(UIDataEx.java:425)
com.ibm.xsp.component.UIViewPanel.encodeBegin(UIViewPanel.java:288)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:841)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.util.FacesUtil.renderComponent(FacesUtil.java:852)
com.ibm.xsp.component.UIViewRootEx._renderView(UIViewRootEx.java:1317)
com.ibm.xsp.component.UIViewRootEx.renderView(UIViewRootEx.java:1255)
com.ibm.xsp.application.ViewHandlerExImpl.doRender(ViewHandlerExImpl.java:651)
com.ibm.xsp.application.ViewHandlerExImpl._renderView(ViewHandlerExImpl.java:321)
com.ibm.xsp.application.ViewHandlerExImpl.renderView(ViewHandlerExImpl.java:336)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:103)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:120)
com.ibm.xsp.controller.FacesControllerImpl.render(FacesControllerImpl.java:270)
com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:261)
com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:157)
com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160)
com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138)
com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)
com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:576)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFComponentModule.java:1335)
com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:853)
com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:796)
com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:565)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1319)
com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:662)
com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:482)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:357)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:313)
com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
答案 0 :(得分:0)
ACL就是问题所在。似乎文档显示正在用户权限上进行,但正在处理服务器权限上的搜索(因此我可以显示视图面板但不允许在其中进行搜索)。 我已更正ACL,因此服务器具有Manager权限(LocalDomainServers设置为Server Group,而不是Server)。 谢谢你的帮助!