<rich:modalPanel/> 在seam框架下的具体应用

原创 2012年03月27日 18:17:20

步骤如下:

1.在WebContent的目录pages/tools下建立模版confirmModal.xhtml.具体内容如下(预先已经准备好alignCenter.xhtml文件):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!--
  确认模式对话框,参数:
 id  模式对话框ID
 title 对话框标题
 mes     提示内容
 actionBean[action] 确认后跳转的action
 refresh 需要刷新的区域
-->
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
 xmlns:s="http://jboss.com/products/seam/taglib"
 xmlns:h="http://java.sun.com/jsf/html"
 xmlns:f="http://java.sun.com/jsf/core"
 xmlns:ui="http://java.sun.com/jsf/facelets"
 xmlns:rich="http://richfaces.org/rich"
 xmlns:auth="http://java.fonsview.com/iptv/auth"
 xmlns:a="http://richfaces.org/a4j"
 >
<f:subview id="#{id}_subview"> 
 <rich:modalPanel id="#{id}"  height="122" width="342">
  <f:facet name="header">
   <h:panelGroup>
    <h:outputText value="#{title}" />
   </h:panelGroup>
            <f:facet name="controls">
              <h:panelGroup>
               <h:graphicImage value="/img/160/icon_three.gif" styleClass="hidelink" id="hidelink"/>
              </h:panelGroup>
            </f:facet>
        </f:facet>
  <ui:decorate template="/layout/alignCenter.xhtml">
    <br/>
          <h:outputText value="#{mes}" template="/layout/alignCenter.xhtml"/>
          <br/>
        </ui:decorate>
  <h:panelGrid columns="1" width="100%">
   <ui:decorate template="/layout/alignCenter.xhtml">
    <a:form>
     <a:commandButton id="confirmOk"
       styleClass="button1"
       value="#{msg['cmd.ok']}"
                         action="#{actionBean[action]}"
       reRender="#{refresh}"
       limitToList="true"
       ajaxSingle="true"
       />  
       
     <rich:spacer width="15px" />
     <a:commandButton id="confirmCancel"
       styleClass="button1"
       value="#{msg['cmd.cancel']}"
       limitToList="true"
       ajaxSingle="true"
       />
     <rich:componentControl for="#{id}"
       attachTo="confirmOk,confirmCancel,hidelink"
       operation="hide"
       event="onclick"/>
    </a:form>
   </ui:decorate>
  </h:panelGrid>
 </rich:modalPanel>
</f:subview> 
</ui:composition>

值得注意的是<rich:modalPanel/>不能被form包含。否则<rich:modalPanel/>无法显示。

 2.具体界面使用的模版配置如下:

<ui:insert name="modalPanelDef"></ui:insert>

3.具体界面调用模版如下所示:

 <ui:define name="confirmmodalPanel"> 
   <ui:include src="/pages/tools/confirmModal.xhtml" >
             <ui:param name="id" value="confirmmodalPanel" />
             <ui:param name="title" value="#{msg['web.delete']}" />
             <ui:param name="mes" value="#{msg['web.delete.confirm']}" />
             <ui:param name="actionBean" value="#{productAction}"/>
             <ui:param name="action" value="deleteProduct" /> 
             <ui:param name="refresh" value="data" /> 
         </ui:include>
  </ui:define>

其中

<ui:param name="actionBean" value="#{productAction}"/>
设置的是后台具体要调用的类。

  <ui:param name="action" value="deleteProduct" /> 
设置的是具体要调用的方法。(我在测试时,总是不能在方法中传递参数。)

4.按钮实际调用如下:

 <a:commandButton styleClass="button4"
         value="#{msg['global.applicationRemove']}"
         disabled="#{(0 == productAction.product.id and 7 != productAction.product.status)  or (0 != productAction.product.status and 7 != productAction.product.status)}"
         reRender="data"
         oncomplete="Richfaces.showModalPanel('confirmmodalPanel');" />

Seam 是一种企业级Java 的应用程序框架

   我这是在一本书上看到的文章,推荐给大家看,喜欢seam的同志,可以去看下,真的不错! Seam 为你的应用程序中所有的业务逻辑定义了一种统一的组件模型。Seam 组件可能是有状态 的,包含与几...

rich:dataTable+a4j:commandLink,ajax删除行(seam)

Seam集成的定时器应用_基于Seam框架的后台定时执行服务 .

在企业应用中,需要编写后台定时服务的需求经常会遇到,如要对某个数据表的字段进行定时刷新等。 在基于Seam框架中要编写一个后台定时执行服务主要要考虑以下两个方面: 服务的初始化;服务的定时执行...

seam从登陆开始的安全权限框架理解

1、对于seam的安全框架和权限控制一直不是很清楚,这几天专门学习了一下。seam使用登录时,一般讲登录名suername和passward绑定到#{credentials}组件中的suername和...

关于使用eclipse搭建seam框架的方法

原文出处:http://www.zhaocx.com/%E6%9C%AA%E5%88%86%E7%B1%BB/%E5%85%B3%E4%BA%8E%E4%BD%BF%E7%94%A8eclipse%E...

使用Seam Framework + JBoss 5.0 开发第一个Web应用 - 简单投票程序

Seam这个单词的本意是缝合、连接,因而,Seam的作用即是把Java EE 规范里的JSF 和 EJB技术完美融合在一起,免去了很多胶合代码,并增强了JSF 和 EJB的很多功能。Seam的设计目标...

Jboss Seam3 Weld Jpa在J2SE中使用之五[安全框架之一认证]

转帖请标明此处地址:http://blog.csdn.net/FENGUFO/category/463623.aspx 此篇主要说一下 seam-security.jar,估计一次写不完,需分多个文件...
  • FENGUFO
  • FENGUFO
  • 2011年06月06日 19:54
  • 1511

Seam CRUD应用程序构架

Seam CRUD应用程序框架本质上是提供预打包的数据访问对象(DAO) 一:数据访问对象(DAO) 在Seam应用程序中,DAO是一个EJB3.0会话bean或者是一个提供引用可管理Entity...

Seam框架文档简述

  • 2012年04月27日 16:53
  • 33KB
  • 下载

JBOSS.SEAM.WEB应用开发

  • 2014年09月22日 17:31
  • 40.48MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:<rich:modalPanel/> 在seam框架下的具体应用
举报原因:
原因补充:

(最多只允许输入30个字)