1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public class InventoryBean implements InventoryListner{ ... private Inventory m_notifier; private Category[] m_category; public InventoryBean(){ m_notifier = Inventory.getInstance(); } private void refresh(){ //reorganize the data model ArrayList<Category> categoryList = m_notifier.reorgnizeCategory(); // code for converting data to the type used in this bean, // ArrayList<Category> to Category[] } ... } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | category.jsp …… <f:view> <h:form id="helloForm"> …… <h:panelGrid id="title"> <hutputText id = "hello_title" value="Inventory"/> <a4jutputPanel id = "book" binding = "#{InventoryBean.categorygrid}"/> …… </h:panelGrid> </h:form> </f:view> public class InventoryBean implements InventoryListner { …… private Category[] m_category; public HtmlAjaxOutputPanel getCategorygrid() { updateGUI(); return categorygrid; } public void setCategorygrid(HtmlAjaxOutputPanel categorygrid) { this.categorygrid = categorygrid; } private void updateGUI(){ categorygrid.getChildren().clear(); if (m_category != null) { int num = m_category.length; for (int index = 0; index < num; index++) { HtmlPanelGrid categorySubgrid = JSFUtil.getLinkgrid("Bookstore_sublink" + index, "#{InventoryBean.category[" +index+ "].categoryLabel}", "#{InventoryBean.category[" +index+ "].onClickAction}"); categorygrid.getChildren().add(categorySubgrid); } } } …… } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | public class Category { …… private String category; private ArrayList<BookItem> bookitems; public String getCategoryLabel(){ if(bookitems.size() <2){ return bookitems.size() + " " + category; }else{ return bookitems.size() + " " + category+"(s)"; } } public String onClickAction(){ HttpSession session = (HttpSession)JSFUtil.getFacesContext(). getExternalContext().getSession(true); session.setAttribute("CATEGORY", this); return "success"; } …… } |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |