在实际的开发过程中,我们经常会遇到以下情况:
在执行标准的功能之前要对个性化的内容进行校验。
比如:在某个标准页面通过个性化添加了一个勾选框,在点击下一步的时候必须去验证此勾选框是否勾选。
具体实现如下
public void processFormRequest(OAPageContext pageContext , OAWebBean webBean) {
String s = pageContext.getParameter("event");
if ("goto".equals(s)){
String noticeFlag = pageContext.getParameter("NoticeFlag");
if(!"Y".equals(noticeFlag)){
throw new OAException("CUX","XXXXX",null,OAException.ERROR,null);
}
}
super.processFormRequest(pageContext, webBean);
}
这样在执行下一步就会去先验证NoticeFlag是否为Y,如果不是,就会抛出异常,如果是,继续往下,走
super.processFormRequest(pageContext, webBean);
然后会执行标准部分的goto. 注:在默认通过继承的生成的代码中会有一段以下代码:
public void CuxXXXXCO extends XXXXCO{
public CuxXXXXCO{
}
}
public CuxXXXXCO{
}
这一段需要注释掉,否则会产生一些莫名的状况。 再次感受到了自己的java基础知识薄弱的坏处了。
更多关于OAF标准页面的个性化请参考:
个性化EBS标准OAF页面关于EBS中OAF个性化的移植OAF个性化和扩展
oaf个性化里,增加的一个Stack Layout,想根据后台数据库的函数来决定是否显示
OAF页面添加个性化
OAF—个性化和扩展维护