日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

adf4351使用_ADF:将UI类别与动态表单一起使用

發布時間:2023/12/3 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 adf4351使用_ADF:将UI类别与动态表单一起使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

adf4351使用

JDev 11g R2具有有趣的新功能“ UI類別”。 它使我們可以在視圖對象定義級別上以聲明方式對VO的屬性進行分組。 例如,我的VEmployees視圖對象的“ UI Categories”選項卡如下所示:

默認情況下,每個視圖對象都有一個預定義的類別“默認”。 我創建了三個新類別“名稱”,“聯系人”,“其他”,并為其分配了屬性。 在此選項卡上,我們還可以為我們的類別定義標簽和工具提示。 在“應用程序模塊測試器”窗口中,它看起來像這樣:

根據文檔 , 動態表格和搜索表格應使用UI類別。 ADF Faces動態表單組件確實具有新的屬性Category 。 該表格過濾VO的屬性,僅顯示指定類別的屬性。 例如,如果我想顯示“ 名稱”類別的屬性,則可以使用以下構造:

<dynamic:form value="#{bindings.VEmployeesIterator}" id="f3" category="Name"/>

因此,如果我們要分別顯示不同的類別,則必須對每個類別使用<dynamic:form標記。 但是文檔提供了一個非常有趣的句子“ 對于動態表單,每個類別的屬性將出現在單獨的選項卡中 ”。 我想我們應該自己實現此功能:)。 在這篇文章中,我將展示我們如何做到這一點

在我的視圖對象的實現類中,我定義了一些API方法來獲取視圖對象的所有UI類別(默認類別除外):

public List<Category> getAttrCategries() {return getOrderedCategories(false, //except DefaultCategoryType.ATTRIBUTE, null); }

為了在頁面上為每個UI分類繪制標簽,我使用了以下jspx代碼:

因此,在這種簡單的構造中,我在navgationPane中使用forEach標簽為每個類別繪制commandNavigationItem。 MainDynamicBean托管bean的Java代碼如下所示:

//Currently selected tabprivate String selectedItem;//Getting categories listpublic List<Category> getCategoryList() {return (List<Category>) resolveExpression("#{bindings.VEmployeesIterator.viewObject.attrCategries}");}//Just a setterpublic void setSelectedItem(String selectedItem) {this.selectedItem = selectedItem;}//Getting selected itempublic String getSelectedItem() {//If nothing is selected, then select the first oneif (selectedItem == null) {List<Category> l = getCategoryList();if (l.size()>0) selectedItem =? l.get(0).getName();??????????????? }??????? return selectedItem;}//Resolving EL expressionspublic static Object resolveExpression(String expression) {FacesContext facesContext =? FacesContext.getCurrentInstance();Application app = facesContext.getApplication();ExpressionFactory elFactory = app.getExpressionFactory();ELContext elContext = facesContext.getELContext();ValueExpression valueExp = elFactory.createValueExpression(elContext, expression, Object.class);return valueExp.getValue(elContext);}

最后,我使用以下構造繪制具有所選類別屬性的動態表單:

<dynamic:form value="#{bindings.VEmployeesIterator}" id="f2"binding="#{MainDynamicBean.dynform}"forceRefresh="#{MainDynamicBean.needRefresh}"/>

和適當的一段Java代碼:

private DynamicForm dynform;//Setterpublic void setDynform(DynamicForm dynform) {this.dynform = dynform;}//Getterpublic DynamicForm getDynform() {return dynform;}public Boolean getNeedRefresh() {//If selected category is not equal to dynform's category//then set needed category and refresh the dynamic formif (dynform.getCategory()!=getSelectedItem()) {this.dynform.setCategory(getSelectedItem()); return true;}else return false;????????????? }

作為我們工作的結果,我們得到了以下屏幕:

就這樣!
您可以下載此帖子的示例應用程序 。

參考:來自ADF實踐博客的JCG合作伙伴 Eugene Fedorenko的“ 動態使用UI類別”表單 。


翻譯自: https://www.javacodegeeks.com/2012/04/adf-using-ui-categories-with-dynamic.html

adf4351使用

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的adf4351使用_ADF:将UI类别与动态表单一起使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。