-
1.如何结束session?
-
你可以使用session的 invalidate方法 .
-
下面是一个从action方法中结束session的例子: :
- public String logout() {
-
FacesContext fc = FacesContext.getCurrentInstance();
-
HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
-
session.invalidate();
-
return "login_page";
-
}
-
下面的代码片段示例了如何在JSP页面中结束session:
-
<% session.invalidate(); %>
-
<c:redirect url="loginPage.jsf" />
-
-
- 2.如何在JSP页面中访问web.xml中的初始化参数?
-
你可以使用预定义的JSF EL变量 initParam来访问:
-
例如,如果你有:
-
<context-param>
-
<param-name>productId</param-name>
-
<param-value>2004Q4</param-value>
-
</context-param>
-
你可以使用她 #{initParam['productId']}来访问 .例如:
-
Product Id: <h:outputText value="#{initParam['productId']}"/>
-
-
- 3.如何从java代码中访问web.xml 中的初始化参数?
-
你可以使用externalContext的 getInitParameter 方法得到他们.例如 如果你的参数如下:
-
<context-param>
-
<param-name>connectionString</param-name>
-
<param-value>jdbc:oracle:thin:scott/tiger@cartman:1521:O901DB</param-value>
-
</context-param>
-
你可以使用下面代码访问connectionString :
-
FacesContext fc = FacesContext.getCurrentInstance();String connection = fc.getExternalContext().getInitParameter("connectionString");
-
-
- 4.如何从backing bean中得到当前页面的URL?
-
你可以通过FacesContext得到一个Http Request对象的引用,如下:
-
FacesContext fc = FacesContext.getCurrentInstance();HttpServletRequest request = (HttpServletRequest) fc.getExternalContext().getRequest();
-
然后使用普通的request方法来得到路径信息.还可以使用另外一种方法:
-
context.getViewRoot().getViewId();
-
将返回你当前JSP(JSF view IDs 基本上只是JSP path names)页面的名字.
-
-
- 5.如何添加上下文路径到outputLink的URL中?
-
在当前的JSF实现中,当在outputLink 中定义的路径以'/'开始时,没有添加上下文路径到URL中,要弥补该问题请在URL中使用 #{facesContext.externalContext.requestContextPath} 前缀.例如:
-
<h:outputLink value="#{facesContext.externalContext.requestContextPath}/myPage.faces">
-
-
- 6.如何使用URL字符串来传递参数到JSF程序中?
-
如果你有下面的URL: http:
-
FacesContext fc = FacesContext.getCurrentInstance();String id = (String) fc.getExternalContext().getRequestParameterMap().get("id");
-
在JSF页面上,你也可以使用预定义的变量访问同样的参数,例如:
-
<h:outputText value="#{param['id']}" />
-
注意: 你必须直接调用该JSF页面,并且使用servlet 映射 (mapping).
-
-
- 7.如何在页面重新载入的时候保留h:inputSecret中的密码?
-
设置redisplay=true, it is false by default.
-
-
- 8.如何使用h:outputText输出HTML标签?
-
-
h:outputText有一个 escape 属性用来处理html 标签. 默认值为true.这意味着所有特殊的符合都被转义为'&'代码. 请看下面示例: <h:outputText value="<b>This is a text</b>"/> 打印的结果是: <b>This is a text</b> 而 <h:outputText escape="false" value="<b>This is a text</b>"/> 打印的结果是: This is a text 当用户点击Command Link后如何显示确认对话框?
-
h:commandLink指定了 onclick 属性为内部使用. 因此你不可以使用她了, 该问题已经在JSF1.2中修复了,对于JSF1.2以前的版本,你可以在onclick以前使用 onmousedown 事件 <script language="javascript"> function ConfirmDelete(link) { var delete = confirm('Do you want to Delete?'); if (delete == true) { link.onclick(); } }</script>
-
<h:commandLink action="delete" onmousedown="return ConfirmDelete(this);"> <h:outputText value="delete it"/></h:commandLink>
-
-
- 9.在调用ValueChangeListener 方法后如何重新装载页面?
-
在 ValueChangeListener的最后,调用 FacesContext.getCurrentInstance().renderResponse()
-
如何实现"请等待..."页面? 在客户端实现可能很简单.你可以包装JSP页面(或者你想要隐藏的一部分)到一个div中,然后你可以添加更多div,当用户点击提交按钮时这些div出现.这些div可以包含gif动画和其他内容. 场景:当用户点击按钮,调用JS函数,该函数隐藏页面并且显示"请等待..."div.你可以使用CSS来自定义外观:下面是一个正常工作的例子: <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
-
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
-
<f:loadBundle basename="demo.bundle.Messages" var="Message"/>
-
<html>
-
<head>
-
<title>Input Name Page</title>
-
<script>
-
function gowait() {
-
document.getElementById("main").style.visibility="hidden";
-
document.getElementById("wait").style.visibility="visible";
-
}
-
</script>
-
-
</head>
-
<body bgcolor="white">
-
<f:view>
-
<div id="main">
-
<h1><h:outputText value="#{Message.inputname_header}"/></h1>
-
<h:messages style="color: red"/>
-
<h:form id="helloForm">
-
<h:outputText value="#{Message.prompt}"/>
-
<h:inputText id="userName" value="#{GetNameBean.userName}" required="true">
-
<f:validateLength minimum="2" maximum="20"/>
-
</h:inputText>
-
<h:commandButton onclick="gowait()" id="submit"
-
action="#{GetNameBean.action}" value="Say Hello" />
-
</h:form>
-
</div>
-
<div id="wait" style="visibility:hidden; position: absolute; top: 0; left: 0">
-
<table width="100%" height ="300px">
-
<tr>
-
<td align="center" valign="middle">
-
<h2>Please, wait...</h2>
-
</td>
-
</tr>
-
</table>
-
</div>
-
</f:view>
-
</body>
-
</html>
-
-
如果你想有一个动画gif图片在"请等待..."中,当表单提交后该图片应该从新加载.因此,再一次指定图片的id,并且添加经过一段时间延时后重新加载的代码.下面是个例子: <script>
-
function gowait() {
-
document.getElementById("main").style.visibility="hidden";
-
document.getElementById("wait").style.visibility="visible";
-
window.setTimeout('showProgress()', 500);
-
}
-
function showProgress(){
-
var wg = document.getElementById("waitgif");
-
wg.src=wg.src;
-
}
-
</script>
-
....
-
<img id="waitgif" src="animated.gif">
转自于
http://zengjinliang.iteye.com/blog/110596
分享到:
相关推荐
浅剖数据jsf格式数据转换为segy数据,可以实现数据转换,以至于在其他软件上处理数据
jsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSFjsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSF
jsf 分页 jsf 分页 jsf 分页 jsf 分页
JSF是一种用于构建Java Web 应用程序的标准框架(是Java Community Process 规定的JSR-127标准)。JSF(Java Server Faces)技术为开发基于网络用户界面的Java开发者提供了标准的编程接口API以及标签库。就像Struts框架...
JSF中文教程JSF中文教程JSF中文教程JSF中文教程
《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF...
JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍
主要讲述JSF的工作方式 JSF的工作方式 JSF架构 JSF模型 JSF事件类型
生成Excel并在客户端下载的JSF实现
第一个JSF程序,初学JSF者必备,jsf架包 jsf实例
jsf1.2 core jsf jsf核心
jsf 视频 java faces jsf 视频 java faces jsf 视频 java faces
JSF入门教程 JSF入门教程 JSF入门教程
jsf 文档 jsf 文档 jsf 文档 jsf 文档
jsf 中文文档jsf 中文文档jsf 中文文档jsf 中文文档
================================= JSF开发必备JAR ================================= <br>《JSF入门简单中文版》开篇提到JSF开发需要的jar,' 但是按其中提供的方法: <br>jstl.jar 与 ...
精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程
JSF的学习入门知识教程,里面有例子还有各个标签的使用及属性介绍
这里是jsf的tags的书籍。主要讲述jsf的用法。
JSF入门详细资料(PDF),包括JSF入门中文版,JSF Web应用实战开发,以及JSF2,JSF入门必配学习资料