Xpages 无法获取null的文档页面名称
使用以下代码完成处理后,My Xpage将用户重定向到另一个页面:Xpages 无法获取null的文档页面名称,xpages,Xpages,使用以下代码完成处理后,My Xpage将用户重定向到另一个页面: facesContext.getExternalContext().redirect("$$OpenDominoDocument.xsp?id="+unid+"&action=openDocument&framework=FA"); 其中“unid”是有效的documentUniqueID 在参数“&documentId=”存在的地方,我看到了此功能的不同用法 如果我使用这个参数,页面将不会加载,任何地方都不会
facesContext.getExternalContext().redirect("$$OpenDominoDocument.xsp?id="+unid+"&action=openDocument&framework=FA");
其中“unid”是有效的documentUniqueID
在参数“&documentId=”存在的地方,我看到了此功能的不同用法
如果我使用这个参数,页面将不会加载,任何地方都不会出现错误
如果与参数“id=”一起使用或直接打开Xpage:“ImportLog.xsp?id=valid unid…”我总是会遇到以下错误:
无法获取null的文档页面名称
使用以下堆栈跟踪:
com.ibm.xsp.FacesExceptionEx: Unable to get document page name for null
com.ibm.xsp.model.domino.DominoDocumentPageTransformer.transformPageName(DominoDocumentPageTransformer.java:69)
com.ibm.xsp.application.ViewHandlerExImpl.convertVirtualPage(ViewHandlerExImpl.java:690)
com.ibm.xsp.application.ViewHandlerExImpl._createViewRoot(ViewHandlerExImpl.java:490)
com.ibm.xsp.application.ViewHandlerExImpl.createViewRoot(ViewHandlerExImpl.java:567)
com.ibm.xsp.application.ViewHandlerExImpl.doCreateView(ViewHandlerExImpl.java:142)
com.ibm.xsp.application.ViewHandlerEx.createView(ViewHandlerEx.java:90)
com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:251)
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:1315)
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:1299)
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:350)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:306)
com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
java.lang.NullPointerException
com.ibm.xsp.model.domino.DominoUtils.isUNID(DominoUtils.java:435)
com.ibm.xsp.model.domino.DominoUtils.getDocumentById(DominoUtils.java:444)
com.ibm.xsp.model.domino.DominoUtils.getDocumentById(DominoUtils.java:461)
com.ibm.xsp.model.domino.DominoDocumentPageTransformer.transformPageName(DominoDocumentPageTransformer.java:51)
com.ibm.xsp.application.ViewHandlerExImpl.convertVirtualPage(ViewHandlerExImpl.java:690)
com.ibm.xsp.application.ViewHandlerExImpl._createViewRoot(ViewHandlerExImpl.java:490)
com.ibm.xsp.application.ViewHandlerExImpl.createViewRoot(ViewHandlerExImpl.java:567)
com.ibm.xsp.application.ViewHandlerExImpl.doCreateView(ViewHandlerExImpl.java:142)
com.ibm.xsp.application.ViewHandlerEx.createView(ViewHandlerEx.java:90)
com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:251)
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:1315)
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:1299)
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:350)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:306)
com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
运行此操作的用户可以访问该文档
将Domino 9与最新的补丁包一起使用时,您的代码在此处失败:
/* */ public static boolean isUNID(String id)
/* */ {
/* 435 */ boolean unid = id.length() == 32;
/* 436 */ return unid;
/* */ }
所以你的UNID不会被传送到变压器。参数必须是“documentId”,而不是“id”
添加更多信息以查找它不适用于您的原因。这里有一个相关或重复的问题:。这是另一个:。没有更多的了。你查过了吗?是的,我查过了,但我发现我的案例中没有。为什么这里没有记录DominoDocumentPageTransformer?