码迷,mamicode.com
首页 > 其他好文 > 详细

OAF中下载附件之后页面失效,报浏览器后退异常

时间:2015-10-19 16:57:30      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:

我在使用了下载功能之后,再往页面添加行或进行保存,页面老是报浏览器后退的异常。

猜测是因为我的下载按钮使用的submitButton,它隐式的包含了一个submit动作,且我在代码中有一个Commit动作,而下载完成之后有一个

response.getOutputStream().flush();

response.getOutputStream().close();

操作,导致页面失效。

 

解决方式:

将submitButton改为button,再增加firePartialAction的事件即可。

 

另:如果是变准的页面,需要添加一个button按钮,且为其添加事件的代码如下。

//预览审核报告

OACellFormatBean createPreviewCellBean =(OACellFormatBean)this.createWebBean(pageContext , OAWebBeanConstants.CELL_FORMAT_BEAN , null , null);
OAButtonBean previewPDFBean = 
    (OAButtonBean)createWebBean(pageContext , OAWebBeanConstants.BUTTON_BEAN , null , "CuxPreviewPDFEvent");
previewPDFBean.setID("CuxPreviewPDFBtn");        
previewPDFBean.setName("CuxPreviewPDFBtn");
String previewPDF = pageContext.getMessage("CUX" , "CUX_PREVIEW_PDF_FILE" , null);
previewPDFBean.setLabel(previewPDF);
previewPDFBean.setText(previewPDF);
Hashtable apprHashTable = new Hashtable(1);
//此事件会隐式的包含submit动作。
//apprHashTable.put("CuxSuppCateMappingId" , 
//                          new OADataBoundValueViewObject(CuxViewApprHisBean , "SuppItemCateMappingId" , "NewSuppReqSearchVO"));
//previewPDFBean.setFireActionForSubmit("CuxPreviewPDFEvent", null, apprHashTable, true, true);

//此事件等价于在Button上设置了firePartialAction事件,且parameters中的key,value分别为param_AucHeaderId,{$AuctionHeaderId}
FirePartialAction previewFirePartialAction = new FirePartialAction("CuxPreviewPDFEvent");Parameter[] params = new Parameter[4];
params[0] = new Parameter();
params[0].setValueBinding(new OADataBoundValueFireActionURL(attrBidValueBean , "{$AuctionHeaderId}"));
params[0].setKey("param_AucHeaderId");
previewPDFBean.setAttributeValue(OAWebBeanConstants.PRIMARY_CLIENT_ACTION_ATTR,previewFirePartialAction);
createPreviewCellBean.addIndexedChild(previewPDFBean);
OARowLayoutBean btnRowBean =(OARowLayoutBean)webBean.findChildRecursive("ButtonBarRow");
btnRowBean.addIndexedChild(createPreviewCellBean);

 

 

 

添加图片按钮事件

        OAImageBean CuxViewApprHisBean = (OAImageBean)createWebBean(pageContext,OAWebBeanConstants.IMAGE_BEAN,null,null);
        CuxViewApprHisBean.setID("CuxViewApprHistory");
        String apprHierarchy = pageContext.getMessage("CUX" , "CUX_SUPP_INQURE_APP_HIS" , null);
        CuxViewApprHisBean.setLabel(apprHierarchy);
        CuxViewApprHisBean.setSource(OAWebBeanConstants.APPS_MEDIA_DIRECTORY +"duplicate_enabled.gif");
        Hashtable apprHashTable = new Hashtable(1);
        apprHashTable.put("CuxSuppCateMappingId" , 
                                  new OADataBoundValueViewObject(CuxViewApprHisBean , "SuppItemCateMappingId" , "NewSuppReqSearchVO"));
        CuxViewApprHisBean.setFireActionForSubmit("CuxApproveHistEvent" , null , apprHashTable , true);
        ResultRNBean.addIndexedChild(11 , CuxViewApprHisBean);

 

OAF中下载附件之后页面失效,报浏览器后退异常

标签:

原文地址:http://www.cnblogs.com/huanghongbo/p/4892095.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!