大家如果有什么好的方法,分享出来哦
jsf 本身很强大,很多功能都实现了,程序员只需要调用它的组件,BUT虽然jsf有很多组件,有时的确不满足当前需求,比如信息提示,下面列出最常用的3种。
1)直接alert (简单了吧,嘿嘿)
2)用模态窗口来输出信息 (这个有点难)
3)在页面的一个专门的div用ajax来输出信息
jsf从后台传给前台的信息有两种方式,在本文中用第二种方式
a)先把信息设置到jsf的Bean中,再在jsf页面中用el取出来就是
b)用jsf的message组件
后台
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("保存成功"));
页面
<rich:messages ></rich:messages>
好了,现在开始用richfaces来实现信息提示
通过自己的理解加g.cn 加 baidu.com 其实richfaces里用alert是最难的,所以把alert放在最后吧,倒是2),3)实现起来比较方便
1)先来模态窗口
首先是userBean
@ManagedBean(name = "userBean")
@SessionScoped
public class UserBean implements Serializable {
private String name;
private String password;
public void login(ActionEvent event){
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(name + " login 成功"));
}
public String getName() {
return name;
}
public void setName(String newValue) {
name = newValue;
}
public String getPassword() {
return password;
}
public void setPassword(String newValue) {
password = newValue;
}
}
然后是页面
<body>
<rich:modalPanel id="messagePanel" width="350" height="100" >
<f:facet name="header">
<h:panelGroup>
<h:outputText value="Modal Panel"></h:outputText>
</h:panelGroup>
</f:facet>
<f:facet name="controls">
<h:panelGroup>
<h:graphicImage value="/images/close.png" styleClass="hidelink" id="hidelink"/>
<rich:componentControl for="messagePanel" attachTo="hidelink" operation="hide" event="onclick"/>
</h:panelGroup>
</f:facet>
<h:panelGroup >
<rich:messages ></rich:messages>
</h:panelGroup>
</rich:modalPanel>
<h:form>
<h3>Please enter your name and password.</h3>
<table>
<tr>
<td>Name:</td>
<td><h:inputText value="#{userBean.name}"/></td>
</tr>
<tr>
<td>Password:</td>
</tr>
</table>
<p><a4j:commandButton value="Login" actionListener="#{userBean.login}" reRender="messagePanel" oncomplete="#{rich:component('messagePanel')}.show()"></a4j:commandButton></p>
</h:form>
</body>
效果图如下
but如果每个按钮都写oncomplete="#{rich:component('messagePanel')}.show()"成这样就太复杂了所以就有了升级版
<body>
<h:panelGroup id="messageGroup" >
<rich:modalPanel id="messagePanel" width="350" height="100" showWhenRendered="true" rendered="#{!empty facesContext.maximumSeverity}">
<f:facet name="header">
<h:panelGroup>
<h:outputText value="Modal Panel"></h:outputText>
</h:panelGroup>
</f:facet>
<f:facet name="controls">
<h:panelGroup>
<h:graphicImage value="/images/close.png" styleClass="hidelink" id="hidelink"/>
<rich:componentControl for="messagePanel" attachTo="hidelink" operation="hide" event="onclick"/>
</h:panelGroup>
</f:facet>
<h:panelGroup >
<rich:messages ></rich:messages>
</h:panelGroup>
</rich:modalPanel>
</h:panelGroup>
<h:form>
<h3>Please enter your name and password.</h3>
<table>
<tr>
<td>Name:</td>
<td><h:inputText value="#{userBean.name}"/></td>
</tr>
<tr>
<td>Password:</td>
</tr>
</table>
<p><a4j:commandButton value="Login" actionListener="#{userBean.login}" reRender="messageGroup" ></a4j:commandButton></p>
</h:form>
</body>
2)专门的div用ajax来输出信息,这个在richfaces里简直是太简单了
<body>
<h:form>
<h3>Please enter your name and password.</h3>
<table>
<tr>
<td>Name:</td>
<td><h:inputText value="#{userBean.name}"/></td>
</tr>
<tr>
<td>Password:</td>
</tr>
</table>
<p><a4j:commandButton value="ajaxLogin" actionListener="#{userBean.login}" ></a4j:commandButton></p>
<h:panelGroup >
<rich:messages ></rich:messages>
</h:panelGroup>
</h:form>
</body>
效果图为
先就写到这吧有时间了再写
- 大小: 13.1 KB
- 大小: 9.2 KB
分享到:
相关推荐
### Richfaces标签详解 #### 一、概述 Richfaces是一个基于JavaServer Faces(JSF)技术的开源框架,提供了一套丰富的用户界面组件库。这些组件不仅具备强大的功能,还能很好地支持AJAX交互,极大地提高了Web应用...
**Richfaces ShowCase离线包** 是一个专为开发者设计的资源包,它包含了Richfaces框架的演示示例,能够帮助用户在没有网络连接的情况下也能深入理解和学习Richfaces的功能和用法。这个离线包特别适合那些需要在本地...
在本文中,我们将深入探讨 RichFaces 标签的使用,特别是 `rich:componentControl` 和 `rich:modalPanel` 标签,以及 `inputNumberSlider` 和 `PanelBar` 组件。RichFaces 是一个功能丰富的 JavaServer Faces (JSF) ...
在RichFaces中,Guava可能被用于提供高效的缓存、多线程支持和其他高级数据结构。 3. **richfaces-core-impl-4.0.0.Final.jar**:这是RichFaces核心实现的库,包含了许多基础服务和功能,如事件处理、Ajax支持、...
在每个阶段,RichFaces都会插入其特有的Ajax处理逻辑,使得部分页面更新成为可能。 **五、学习和使用指南** 由于"richfaces中文开发文档"是纯中文的,对于维护老项目或者初学者来说非常友好。文档应该包含了组件的...
标题特别提到“里面包含JAR包”,意味着这是一个包含了RichFaces运行所需的库文件的压缩包,可能包含了多个JAR文件,供开发者在项目中引用。 **描述解析:** 描述中提到,这些JAR包是针对"tomcat5+Eclipse"环境的,...
### RichFaces框架详解及其在IT行业的应用 #### 引言 在现代Web开发领域,提升用户体验和优化交互性是至关重要的。RichFaces作为一款开源框架,以其强大的Ajax能力、丰富的组件库以及高度可定制的特性,在Java...
这些库包含了RichFaces的组件库、AJAX引擎、以及其他依赖的库,如JSF API和实现、以及可能的第三方库。开发者在项目中引用这些JARs,就可以在他们的应用中使用RichFaces的功能。 总的来说,RichFaces UI 3.2.1是...
1. **AJAX 支持**:RichFaces 使用 A4J (Ajax for Java) 技术,允许开发者通过简单的声明式或编程方式实现页面局部更新,减少页面重载,提升响应速度。 2. **组件库**:包括各种富组件,如数据表(DataTable)、...
关于richfaces的一些比较好的资料,希望大家看了能有收获
### RichFaces 3.3 帮助文档关键知识点概览 #### 一、简介 - **RichFaces框架概述:** RichFaces是一个基于JavaServer Faces(JSF)的开源组件库,提供了大量的富客户端组件以及对皮肤的支持。该文档详细介绍了如何...
这个标签可能用于分类或搜索,方便其他开发者找到与 RichFaces 相关的信息和技术资源。 **压缩包子文件的文件名称列表:** "jboss-richfaces-3.0.0-src" 暗示这是一个包含 RichFaces 3.0.0 版本源代码的压缩包。源...
RichFaces是一个开源框架,专注于将Ajax功能无缝集成到JavaServer Faces(JSF)应用程序中,无需依赖JavaScript。这个框架充分利用了JSF的生命周期、验证、转换工具以及资源管理功能。它提供的Ajax支持是完全集成到...
RichFaces 4.5 是一个强大的JavaServer Faces (JSF) 框架的扩展库,专为构建富互联网应用程序(Rich Internet Applications, RIA)而设计。这个库提供了丰富的组件集,以及对JavaScript(JS)和Java API的支持,使得...
- **支持的服务器**:RichFaces可在多个应用服务器上运行,如Tomcat、Jetty、WebLogic、WebSphere等。选择适合你项目需求的服务器。 - **支持的浏览器**:为了确保广泛的用户支持,RichFaces通常会支持最新及前几代...
RichFaces组件简介,复合组件,日期控件,Ajax标签, 轻松实现。RichFaces组件简介,复合组件,日期控件,Ajax标签, 轻松实现。RichFaces组件简介,复合组件,日期控件,Ajax标签, 轻松实现。
### RichFaces 3.2 用户手册知识点概览 #### 一、引言 RichFaces 3.2 是一款强大的框架,提供了丰富的组件库以及可定制化的皮肤支持,它旨在简化Web应用程序的开发过程,尤其在JavaServer Faces (JSF) 技术的基础...
RichFaces_3.3.3_TLD.chm