-
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
分享到:
相关推荐
这个技术集锦涵盖了J2EE开发的各个方面,包括但不限于Web组件、EJB(Enterprise JavaBeans)、JMS(Java Message Service)、JTA(Java Transaction API)以及各种框架和技术的综合应用。 首先,Web组件是J2EE的...
8. **JSP与JSF(JavaServer Faces)**:JSF是一种更高级的UI框架,它扩展了JSP的功能,提供组件化开发和更强大的表单处理能力。 9. **JSTL(JavaServer Pages Standard Tag Library)**:JSTL是一套标准标签库,它...
这份"程序员笔试、面试题集锦"通过提供不同难度和类型的题目,旨在帮助开发者巩固基础知识,提高解决实际问题的能力。无论是初级程序员还是经验丰富的开发者,都能从中受益,提升自己的专业素养,为面试或工作中遇到...
在JSP中,视图(View)由JSP页面实现,控制器(Controller)可能由Servlet或JavaServer Faces(JSF)组件扮演,模型(Model)则是业务逻辑和数据存储。 通过深入学习这个**JSP实用编程集锦**,开发者不仅可以熟练...
通过深入学习以上知识点,并结合"J2EE面试题集锦.txt"和"笔试100问.doc"中的练习,你可以提升对J2EE的理解,为面试做好充分准备。记住,理论知识是基础,实践经验同样重要。在学习过程中,尝试自己动手实践,解决...
14. **Java EE技术**:Servlet、JSP、JSF、EJB等,用于构建企业级Web应用程序。 15. **并发编程**:线程池、并发容器、并发工具类(CountDownLatch、CyclicBarrier、Semaphore等)。 16. **单元测试与持续集成**:...
这份“javaee面试题集锦”涵盖了广泛的JavaEE相关知识点,对于求职者或开发者来说,是提升技能和准备面试的宝贵资源。下面,我们将深入探讨这些面试题可能涵盖的关键技术领域。 1. **Java基础** - 类与对象:理解...
同时,JavaServer Faces (JSF)、Spring MVC等框架进一步简化了Web应用的开发。 10. **设计模式**:设计模式是解决常见编程问题的模板,如单例模式、工厂模式、观察者模式等。熟练运用设计模式可以提高代码质量,使...
5. **XPages**:随着Web技术的发展,DOMINO引入了XPages,这是一种基于JavaServer Faces (JSF) 的技术,用于创建现代、互动的Web用户界面。XPages允许开发者使用HTML、CSS和JavaScript来设计UI,同时仍能利用DOMINO...
1. **SQL语句集锦.7z**:这是一个关于SQL(Structured Query Language)的资源,SQL是用于管理和处理关系数据库的标准语言。文件可能包含了SQL的基本语法、查询操作、数据更新、表的创建与修改、视图、存储过程等...
【描述】:这是一份精心整理的JAVA和JAVAEE面试题集锦,包含了我在多次面试过程中遇到的各类问题,旨在为准备面试的朋友提供全面且实用的参考资料。这份文档将帮助你深入了解Java编程语言以及Java Enterprise ...