`
chicochen
  • 浏览: 6754 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

SEAM+AJAX4JSF 实现动态菜单

阅读更多
的确方便了很多!
xml 代码
  1. <tr>  
  2.  <td>  
  3.         <s:decorate template="/page/tiles/formFieldDecorate.xhtml">  
  4.             <ui:define name="label">分类1</ui:define>  
  5.             <h:selectOneMenu value="#{_catalog1}" converter="#{entityConverter}">  
  6.     <s:selectItems value="#{appCache.catalog1List}"    
  7.      var="cata1" label="#{cata1.name}" noSelectionLabel="请选择"/>            
  8.     <a4j:support event="onchange"  
  9.      actionListener="#{courseMaintAction.loadCata2ByCata1}"  
  10.      reRender="cata2Area" requestDelay="0"  ajaxSingle="true" />  
  11.    </h:selectOneMenu>  
  12.         </s:decorate>  
  13.        </td>  
  14. </tr>  
  15. <tr>  
  16.  <td>  
  17.          <s:decorate template="/page/tiles/formFieldDecorate.xhtml">  
  18.              <ui:define name="label">分类2</ui:define>  
  19.               <a4j:outputPanel id="cata2Area">  
  20.                <h:selectOneMenu value="#{_catalog2}" converter="#{entityConverter}">  
  21.        <s:selectItems value="#{_catalog2List}" var="cata2" label="#{cata2.name}" noSelectionLabel="请选择" />  
  22.       </h:selectOneMenu>  
  23.      </a4j:outputPanel>  
  24.          </s:decorate>  
  25.  </td>  
  26. </tr>  
java 代码
  1. //$Id: NavigateeAction.java,v 1.1 2007/02/21 11:09:46 chicochen Exp $   
  2. package com.eastidea.yctraining.action;   
  3.   
  4. import static org.jboss.seam.ScopeType.SESSION;   
  5.   
  6. import java.util.List;   
  7. import java.util.Set;   
  8.   
  9. import javax.ejb.Remove;   
  10. import javax.ejb.Stateful;   
  11.   
  12. import org.jboss.seam.annotations.Begin;   
  13. import org.jboss.seam.annotations.Destroy;   
  14. import org.jboss.seam.annotations.End;   
  15. import org.jboss.seam.annotations.In;   
  16. import org.jboss.seam.annotations.Name;   
  17. import org.jboss.seam.annotations.Out;   
  18. import org.jboss.seam.annotations.web.RequestParameter;   
  19.   
  20. import com.eastidea.yctraining.action.base.BaseMaintActionImpl;   
  21. import com.eastidea.yctraining.entity.Catalog1;   
  22. import com.eastidea.yctraining.entity.Catalog2;   
  23. import com.eastidea.yctraining.entity.Course;   
  24. import com.eastidea.yctraining.entity.Organization;   
  25. import com.eastidea.yctraining.service.CourseMaintService;   
  26.   
  27. @Stateful  
  28. @Name("courseMaintAction")   
  29. public class CourseMaintActionImpl extends BaseMaintActionImpl implements CourseMaintAction {   
  30.   
  31.     private static final long serialVersionUID = -7494995399977805979L;   
  32.   
  33.     @In(value="courseMaintService", create=true)    
  34.     private CourseMaintService courseMaintService;   
  35.        
  36.     @In(required = false, scope = SESSION)   
  37.     protected Organization currentOrg;   
  38.        
  39.     //   
  40.     @RequestParameter  
  41.     private Long _courseid;   
  42.        
  43.     @In(required = false)@Out(required = false)   
  44.     private Catalog1 _catalog1;   
  45.     @In(required = false)@Out(required = false)   
  46.     private Catalog2 _catalog2;   
  47.        
  48.     @In(required = false)@Out(required = false)   
  49.     private Course _course;    
  50.        
  51.     @In(required = false)@Out(required = false)   
  52.     private Set<Catalog2> _catalog2List;           
  53.        
  54.     @Destroy @Remove  
  55.     public void destroy() {   
  56.     }   
  57.   
  58.     @Begin(join=true)   
  59.     public void loadCata2ByCata1(){   
  60.         _catalog2List = _catalog1.getCata2Collection();   
  61.     }   
  62.        
  63.     @Begin(join=true)   
  64.     public void create() {   
  65.         myAct = "create";   
  66.         _course = new Course();        
  67.     }   
  68.   
  69.     @End  
  70.     public void save() {   
  71.         if (myAct.equals("true")) {   
  72.             _course.setCatalog1(_catalog1);   
  73.             _course.setCatalog2(_catalog2);   
  74.             _course.setOrganization(currentOrg);   
  75.             courseMaintService.saveCourse(_course);   
  76.         }   
  77.     }   
  78.   
  79.     public void edit() {   
  80.         int i =0;   
  81.         i++;   
  82.            
  83.     }   
  84.   
  85.     public void update() {   
  86.         // TODO Auto-generated method stub   
  87.            
  88.     }   
  89.   
  90.     public void view() {   
  91.         // TODO Auto-generated method stub   
  92.            
  93.     }   
  94.   
  95.     public void delete() {   
  96.         // TODO Auto-generated method stub   
  97.            
  98.     }   
  99.        
  100.     public void cancel() {   
  101.         // TODO Auto-generated method stub   
  102.            
  103.     }   
  104.   
  105. }   
分享到:
评论
1 楼 ssuhvs 2008-06-05  
版主您好,我是个初学者,能不能告诉我们 converter="#{entityConverter}" 中的entityConverter是在哪定义的 ? 能不能贴出来看一下呀。我看到别人用<convertEntity/> 是不是一个效果呀。

相关推荐

    seam+jsf+richfaces+ajax4jsf 电子书

    Seam作为整合框架,可以帮助管理和协调JSF、RichFaces和Ajax4jsf的交互,实现更高效的开发流程。例如,Seam可以自动处理RichFaces和Ajax4jsf组件之间的通信,提供统一的依赖注入和事务管理。通过Seam,开发者可以更...

    seam+jsf+richfaces+ajax4jsf打包了

    【seam+jsf+richfaces+ajax4jsf打包了】 这个压缩包集合了四个重要的Java Web开发框架,它们分别是Seam、JSF(JavaServer Faces)、RichFaces以及Ajax4jsf。这些技术在构建现代、交互性强的Web应用程序时发挥着关键...

    seam,jsf,ajax4jsf的大全资料集合

    在压缩包"seam+jsf+ajax4jsf"中,可能包含了关于这三个技术的文档、示例代码、教程和其他学习资源。这些资料可以帮助开发者更深入地理解和掌握Seam、JSF和Ajax4jsf的使用,从而提升其在实际项目中的应用能力。通过...

    Ajax4jsf 用户手册

    这部分涵盖了针对不同Web应用程序描述符参数、Sun JSF RI、Apache MyFaces以及Facelets的特定配置,以及如何在JBoss Seam中集成Ajax4jsf。 ### 7. **与IDE集成** 指南可能包含了在Eclipse、NetBeans或其他常用集成...

    ajax 4jsf用户指南中文版

    - **组件库**:Ajax4jsf提供了一系列内置的JSF标签库,用于简化Ajax功能的实现。 - **a4j:ajaxListener**:用于监听Ajax事件。 - **a4j:region**:定义区域内的元素响应Ajax事件。 - **a4j:page**:控制整个页面...

    jsf+seam+jpa实例

    **JSF、Seam与JPA整合实例详解** 在现代Web应用开发中,JavaServer Faces (JSF)、Seam框架和Java Persistence API (JPA)是三个关键的技术组件。本实例将深入探讨如何利用这三者进行联合开发,帮助开发者实现高效、...

    ajax4jsf中文教程

    2. 开始使用Ajax4jsf 环境需求 下载Ajax4jsf 安装 简单的 AJAX Echo 项目 JSP 页面 数据 Bean faces-config.xml Web.xml 部署 3. Ajax4jsf 框架的基本概念 介绍 结构概览 如何做... 发送一个AJAX 请求 ...

    ajax4jsf中文用户指南

    Ajax4JSF充分利用JSF的优势,如生命周期管理、验证、转换的灵活性以及对静态和动态资源的管理。 ### 1. 开始使用Ajax4JSF **环境需求**:首先,你需要一个兼容的Java版本,以及支持JSF的实现,比如Sun JSF RI或...

    Struts+spring+hibernate3---JSP+javabean+DAO---JSF+richfaces+seam+EJB

    1)JSP+javabean+DAO(Ajax:anywhere) 2)Struts+spring+hibernate3(AJax:DOJO) 3)JSF+richfaces+seam+EJB 总共3个完整的实例,并配有需求分析~~~~~~~~,绝对经典!

    Ajax4JSF用户指南

    对于服务器端,Ajax4jsf可以与JBoss Seam协同工作,提供更丰富的功能。 为了获取更多关于Ajax4JSF的信息和资源,可以访问相关的在线论坛和文档,它们通常会提供详细的教程、API文档和示例,帮助开发者更好地理解和...

    ajax4jsf 用户指南

    Ajax4jsf 提供了一系列组件,以方便开发者实现 AJAX 功能: - `a4j:ajaxListener`:监听 AJAX 事件。 - `a4j:region`:定义 AJAX 更新的区域。 - `a4j:page`:应用于整个页面的 AJAX 属性。 - `a4j:support`:支持 ...

    Ajax4jsf

    Ajax4jsf是一个开源框架,专门用于在JavaServer Faces (JSF)项目中添加Ajax功能。这个框架的主要优点是开发者...通过使用Ajax4jsf,开发者可以提高用户体验,实现更流畅、更动态的Web应用,而无需深入JavaScript编码。

    seam+spring+hibernate+richfaces配置

    Seam整合了JSF(JavaServer Faces)、EJB(Enterprise JavaBeans)和CDI(Contexts and Dependency Injection),提供了一种声明式编程模型,使开发者能够更专注于业务逻辑而不是底层实现。在Seam中,你可以轻松地...

    ajax4jsf detailed docuementation

    2.5. JBoss Seam支持:如果应用使用了Seam框架,Ajax4jsf提供了集成指南。 2.6. Portlet支持:在portlet环境下,Ajax4jsf的配置和使用也有所说明。 2.7. Sybase EAServer:对于Sybase的服务器环境,有特定的集成...

    seam 框架整合hibernate+jsf

    4. **安全性和身份验证**:Seam提供了内置的安全框架,可以轻松集成到JSF应用中,实现用户身份验证和授权。 5. **国际化和本地化**:Seam与JSF结合,使得应用的国际化和本地化变得更加简单,开发者可以通过Seam的...

    Seam-无缝集成JSF

    3. **Ajax远程调用**:Seam内置了对Ajax的支持,简化了异步通信的实现过程,提升了用户体验。 4. **异常处理**:Seam提供了更为合理的异常处理机制,确保应用在出现错误时能够优雅地处理问题,提高应用的稳定性。 ...

    seam+hibernate注册例子

    在这个"seam+hibernate注册例子"中,我们将探讨如何在Eclipse 3.4环境下,结合Tomcat 6.0服务器,搭建一个使用Seam和Hibernate的注册系统。 首先,确保你已经安装了Eclipse IDE和Tomcat 6.0服务器。Eclipse 3.4版本...

    seam+in+action+中文版

    4. **Seam 的 RESTful 支持**:Seam 支持构建 RESTful 风格的 Web 服务,使得应用可以更容易地与其他系统集成。 综上所述,JBoss Seam 是一个功能强大且灵活的 Java EE 开发框架,它不仅提供了高效的组件模型和事务...

Global site tag (gtag.js) - Google Analytics