我正在尝试在加载页面时捕获url参数。我在标记内部使用beforePhase属性来调用处理PhaseEvent的backing bean方法。我能够读取参数,但似乎有一些问题。支持bean方法执行两次。我第一次得到所有网址参数,但第二次我得到了空。
这是我得到的控制台中的输出(行“BeforePhase ONLOAD”是我方法中的SOP语句。正如您所看到的那样,SOP打印两次(下面是控制台输出) -
* < _checkTimestamp> Apache Trinidad正在运行时启用了时间戳检查。这不应该在生产环境中使用。请参阅WEB-INF / web.xml中的org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION属性
beforePhase ONLOAD
< _isBeanValidationAvailable> Bean Validation提供程序不存在,因此禁用了bean验证
beforePhase ONLOAD ***
我必须使用这些url参数将其绑定到视图对象并检索页面的数据。但是如果这个方法被调用两次就像它在这里被调用那么第二个会导致一些数据库错误,或者最终我不会在屏幕上看到任何记录。
有办法解决这个问题吗?
我实际上遵循了此页面上显示的方法1示例 - http://jneelmani.blogspot.com/2013/01/adf-how-to-call-method-on-page-load.html。在这个例子中,他展示了如何避免beforePhase被多次调用,我已经这样做了但仍然调用了两次方法。
这里的任何建议都会有所帮助。
感谢。
答案 0 :(得分:0)
当然你知道ADF支持一种已经可用于收藏页面的机制。网址参数?
http://myadfnotebook.blogspot.pt/2010/11/bookmarking-with-adf.html