ADF backing Bean中常用的代码

Bean中常用方法:

1
2
3
//获取binding容器
BindingContainer bindings
=BindingContext. getCurrent ( ). getCurrentBindingsEntry ( ) ;
1
2
3
//获取Page definitions的 attribute的值
AttributeBinding attr = (AttributeBinding )bindings. getControlBinding ( "test" ) ;
attr. setInputValue (”test” ) ;
1
2
3
4
5
6
7
8
9
// 获取action或者方法
OperationBinding method =bindings. getOperationBinding ( "methodAction" ) ;
method. execute ( ) ;
Listerrors =method. getErrors ( ) ;

method =bindings. getOperationBinding (”methodAction” ) ;
MapparamsMap =method. getParamsMap ( ) ;
paramsMap. put (”param”,”value” ) ;
method. execute ( ) ;
1
2
3
4
// 从ADF Tree 或者 Table中获取数据
DCBindingContainer dcBindings = (DCBindingContainer )BindingContext. getCurrent ( ). getCurrentBindingsEntry ( ) ;
FacesCtrlHierBinding treeData = (FacesCtrlHierBinding )bc. getControlBinding (”tree” ) ;
Row [ ]rows =treeData. getAllRowsInRange ( ) ;
1
2
3
4
5
6
7
// 从iterator 的当前行获取一个 attribute的值
DCIteratorBinding iterBind = (DCIteratorBinding )dcBindings. get (”testIterator” ) ;
Stringattribute = ( String )iterBind. getCurrentRow ( ). getAttribute (”field1″ ) ;
<code >
<code lang = "java" >
// 获取错误
Stringerror =iterBind. getError ( ). getMessage ( ) ;
1
2
3
4
// 刷新iterator
bindings. refreshControl ( ) ;
iterBind. executeQuery ( ) ;
iterBind. refresh (DCIteratorBinding. RANGESIZE_UNLIMITED ) ;
1
2
3
4
5
6
// 获取 iterator的所有行
Row [ ]rows =iterBind. getAllRowsInRange ( ) ;
TestData dataRow = null ;
for (Row row :rows ) {
dataRow = (TestData ) ( (DCDataRow )row ). getDataProvider ( ) ;
}
1
2
3
4
5
//获取iterator当前行的另一种方法
FacesContext ctx =FacesContext. getCurrentInstance ( ) ;
ExpressionFactory ef =ctx. getApplication ( ). getExpressionFactory ( ) ;
ValueExpression ve =ef. createValueExpression (ctx. getELContext ( ), “# {bindings. testIter. currentRow. dataProvider }”, TestHead. class ) ;
TestHead test = (TestHead )ve. getValue (ctx. getELContext ( ) ) ;
1
2
3
4
5
// 获得一个on bean
FacesContext ctx =FacesContext. getCurrentInstance ( ) ;
ExpressionFactory ef =ctx. getApplication ( ). getExpressionFactory ( ) ;
ValueExpression ve =ef. createValueExpression (ctx. getELContext ( ), “# {testSessionBean }”, TestSession. class ) ;
TestSession test = (TestSession )ve. getValue (ctx. getELContext ( ) ) ;
1
2
3
4
5
6
7
8
9
//获取askflow的Binding
DCTaskFlowBinding tf = (DCTaskFlowBinding )dc. findExecutableBinding (”dynamicRegion1″ ) ;
<code >
<code lang = "java" >
//获取异常并显示到页面
catch ( Exceptione ) {
FacesMessage msg = newFacesMessage (FacesMessage. SEVERITY_ERROR, e. getMessage ( ), “” ) ;
FacesContext. getCurrentInstance ( ). addMessage ( null, msg ) ;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// 重置控件的所有子控件
private voidresetValueInputItems (AdfFacesContext adfFacesContext,
UIComponent component ) {
Listitems =component. getChildren ( ) ;
for (UIComponent item :items ) {
resetValueInputItems (adfFacesContext,item ) ;
if (item instanceofRichInputText ) {
RichInputText input = (RichInputText )item ;
if ( !input. isDisabled ( ) ) {
input. resetValue ( ) ;
adfFacesContext. addPartialTarget (input ) ;
} ;
} else if (item instanceofRichInputDate ) {
RichInputDate input = (RichInputDate )item ;
if ( !input. isDisabled ( ) ) {
input. resetValue ( ) ;
adfFacesContext. addPartialTarget (input ) ;
} ;
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 重定向到另一个URL
ExternalContext ectx =FacesContext. getCurrentInstance ( ). getExternalContext ( ) ;
HttpServletResponse response = (HttpServletResponse )ectx. getResponse ( ) ;
Stringurl =ectx. getRequestContextPath ( ) +/adfAuthentication ?logout =true &amp ;end_url =/faces /start. jspx;
try {
response. sendRedirect (url ) ;
} catch ( Exceptionex ) {
ex. printStackTrace ( ) ;
}
<code lang = "java" >
// 刷新控件(PPR)
AdfFacesContext. getCurrentInstance ( ). addPartialTarget (UIComponent ) ;
// 查找控件
privateUIComponent getUIComponent ( Stringname ) {
FacesContext facesCtx =FacesContext. getCurrentInstance ( ) ;
returnfacesCtx. getViewRoot ( ). findComponent (name ) ;
}
1
2
3
4
5
6
7
8
9
10
11
//获取 bc application module
privateOEServiceImpl getAm ( ) {
FacesContext fc =FacesContext. getCurrentInstance ( ) ;
Application app =fc. getApplication ( ) ;
ExpressionFactory elFactory =app. getExpressionFactory ( ) ;
ELContext elContext =fc. getELContext ( ) ;
ValueExpression valueExp =
elFactory. createValueExpression (elContext, “# {data. OEServiceDataControl. dataProvider }”,
Object. class ) ;
return (OEServiceImpl )valueExp. getValue (elContext ) ;
}
1
2
3
4
5
6
7
//获取table选中的行
RowKeySet selection =resultTable. getSelectedRowKeys ( ) ;
Object [ ]keys =selection. toArray ( ) ;
Listreceivers = new ArrayList (keys. length ) ;
for ( Objectkey :keys ) {
User user =modelFriends. get ( ( Integer )key ) ;
}
1
2
3
4
5
6
7
8
// 获取table选中的行的另一种
for ( ObjectfacesRowKey :table. getSelectedRowKeys ( ) ) {
table. setRowKey (facesRowKey ) ;
Objecto =table. getRowData ( ) ;
JUCtrlHierNodeBinding rowData = (JUCtrlHierNodeBinding )o ;
Row row =rowData. getRow ( ) ;
Test testRow = (Test ) ( (DCDataRow )row ). getDataProvider ( ) ;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值