我在JSF开发中遇到了一个问题。首先我的环境如下:
jsf 1.2 , myeclipce 8.5 , tomcat 6
代码如下,在datatable 外面的 commandlink 可以使用,而使用datatable 里的 commandlink 则是跳回本页,有没有大虾知道是怎么回事?
jsf coding:
<body>
<f:view>
<h:form id="actionForm">
<h:panelGrid styleClass="titleBackground" id="listTitle" columns="1">
<h:outputText styleClass="PrimarySubheader" id="label_GeneralProfile" value="用户搜索"></h:outputText>
</h:panelGrid>
<h:panelGrid columns="5">
<h:outputLabel value="用户名称" styleClass="outputLabel"></h:outputLabel>
<h:inputText value="#{pc_UserView.user.userName}"></h:inputText>
<h:outputText styleClass="outputLabel" value="" style="margin-left: 20px"></h:outputText>
<h:outputLabel value="用户状态" styleClass="outputLabel"></h:outputLabel>
<h:selectOneMenu value="#{pc_UserView.user.state}">
<f:selectItem itemLabel="" itemValue=""/>
<f:selectItem itemLabel="正常" itemValue="1"/>
<f:selectItem itemLabel="非正常" itemValue="2"/>
</h:selectOneMenu>
<h:outputLabel value="用户帐号" styleClass="outputLabel"></h:outputLabel>
<h:inputText value="#{pc_UserView.user.loginId}"></h:inputText>
<h:outputText styleClass="outputLabel" value="" style="margin-left: 20px"></h:outputText>
<h:commandButton id="display" value="Display." type="submit" action="#{pc_UserView.getUserList}"></h:commandButton>
</h:panelGrid>
<h:dataTable id="userTable" value="#{pc_UserView.allUsers}" var="userObj"
styleClass="dataTable" headerClass="headerClass" footerClass="footerClass"
rowClasses="rowClass1, rowClass2" border="1" cellpadding="2" cellspacing="0"
style="text-align: left" width="100%" >
<h:column id="userId">
<f:facet name="header">
<h:outputText styleClass="SecondarySubheader" value="用户标识"></h:outputText>
</f:facet>
<h:outputText value="#{userObj.userId}"></h:outputText>
<f:attribute value="180" name="width" />
</h:column>
<h:column id="userName">
<f:facet name="header">
<h:outputText styleClass="SecondarySubheader" value="用户名称"></h:outputText>
</f:facet>
<h:outputText value="#{userObj.userName}"></h:outputText>
</h:column>
<h:column id="loginId">
<f:facet name="header">
<h:outputText styleClass="SecondarySubheader" value="登录账号"></h:outputText>
</f:facet>
<h:outputText value="#{userObj.loginId}"></h:outputText>
</h:column>
<h:column id="state">
<f:facet name="header">
<h:outputText styleClass="SecondarySubheader" value="用户状态"></h:outputText>
</f:facet>
<h:outputText value="#{userObj.state == 1 ? '正常' : '非正常'}"></h:outputText>
</h:column>
<h:column id="lastUpdateDate">
<f:facet name="header">
<h:outputText styleClass="SecondarySubheader" value="最后更新时间"></h:outputText>
</f:facet>
<h:outputText value="#{userObj.lastUpdateDate}"></h:outputText>
</h:column>
<h:column id="options">
<f:facet name="header">
<h:outputText styleClass="SecondarySubheader" value="操作"></h:outputText>
</f:facet>
<h:commandLink value="Edit" action="#{pc_UserEdit.toEdit}" immediate="true" >
<f:param name="userId" value="#{userObj.userId}"></f:param>
</h:commandLink>
</h:column>
</h:dataTable>
<h:commandLink value="Edit" action="#{pc_UserEdit.toEdit}" immediate="true" >
<f:param name="userId" value="#{userObj.userId}"></f:param>
</h:commandLink>
</h:form>
</f:view>
</body>
navigation rule coding :
<?xml version="1.0" encoding="UTF-8"?>
<faces-config version="1.2" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
<!-- Managed Beans -->
<managed-bean>
<managed-bean-name>pc_UserView</managed-bean-name>
<managed-bean-class>com.ideal.user.managed.UserView</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>user</property-name>
<property-class>com.ideal.user.vo.UserBean</property-class>
<value>#{user}</value>
</managed-property>
</managed-bean>
<managed-bean>
<managed-bean-name>pc_UserEdit</managed-bean-name>
<managed-bean-class>com.ideal.user.managed.UserEdit</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>user</property-name>
<property-class>com.ideal.user.vo.UserBean</property-class>
<value>#{user}</value>
</managed-property>
</managed-bean>
<managed-bean>
<managed-bean-name>pc_UserRegister</managed-bean-name>
<managed-bean-class>com.ideal.user.managed.UserRegister</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>pc_Index</managed-bean-name>
<managed-bean-class>com.ideal.user.managed.Index</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<!-- View Object Beans -->
<managed-bean>
<managed-bean-name>user</managed-bean-name>
<managed-bean-class>com.ideal.user.vo.UserBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
<!-- 全局
<navigation-rule>
<navigation-case>
<from-outcome>edit</from-outcome>
<to-view-id>/userEdit.jsp</to-view-id>
</navigation-case>
</navigation-rule>-->
<!-- 局部 -->
<navigation-rule>
<from-view-id>/userView.jsp</from-view-id>
<navigation-case>
<from-action>#{pc_UserView.toRegister}</from-action>
<from-outcome>register</from-outcome>
<to-view-id>/userRegister.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>edit</from-outcome>
<to-view-id>/userEdit.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<navigation-rule>
<from-view-id>/userEdit.jsp</from-view-id>
<navigation-case>
<from-action>#{pc_userEdit.submitAction}</from-action>
<from-outcome>success</from-outcome>
<to-view-id>/userView.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-action>#{pc_userEdit.submitAction}</from-action>
<from-outcome>exception</from-outcome>
<to-view-id>/userEdit.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<navigation-rule>
<from-view-id>/userRegister.jsp</from-view-id>
</navigation-rule>
<navigation-rule>
<from-view-id>/index.jsp</from-view-id>
<navigation-case>
<from-action>#{pc_Index.toUserView}</from-action>
<from-outcome>userView</from-outcome>
<to-view-id>/userView.jsp</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
分享到:
相关推荐
jsf2.0 dataTable单行修改例子,包含了jsf dataTable修改一行数据的方法
ajax4jsf 局部刷新刷新datatable 例子
Libreria para tablas en JSF
jsf primefaces datatable jsfDemo spring 简单的例子,刚学的可以学习下
对DataTable进行分页,对DataTable进行分页
datatable行样式 frameset及树型目录dtree jsf滚动组件 jsf实现排序功能 jsf datetable行编辑的实现 jsf事件 jsf国际化 jsf验证与消息
如:richfaces、primefaces、myfaces等,就日前来讲primefaces功能很强大,控件很多,但有一点不好就是不支持IE6,特别是下拉列表,p:dialog等,其它的分页p:datatable实际使用起来总有不如意的地方。richfaces还...
jsf中文使用教程jsf中文使用教程
JSF中文教程JSF中文教程JSF中文教程JSF中文教程
jsf 中文文档jsf 中文文档jsf 中文文档jsf 中文文档
Ajax4jsf 用户指南 目录 1. 介绍 2. 开始使用 Ajax4jsf ...Ajax4jsf ...Ajax4jsf 框架的基本概念 ...如何做......4. Ajax4JSF ...a4j:commandLink a4j:commandButton ...9. Exadel VCP 和 Ajax4jsf 10. Web上的资源
JSF框架中使用的设计模式介绍.docx(office2007格式)
精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程
很适合初学者 JSF DEMO
JSF是一种用于构建Java ... 包含JSP页面的JSF应用程序也使用由为了表现UI组件和在页面上的其他对象的JSF技术而定义的标准的tag库。 Java Server Faces技术的重要开发框架 sun-ri、myfaces、icefaces、richfaces、seam
JSF入门教程 JSF标签 JSF的LIB Ajax4JSF使用手册 JSF项目的创建 包你入门
JSF的学习入门知识教程,里面有例子还有各个标签的使用及属性介绍
2. 开始使用Ajax4jsf 环境需求 下载Ajax4jsf 安装 简单的 AJAX Echo 项目 JSP 页面 数据 Bean faces-config.xml Web.xml 部署 3. Ajax4jsf 框架的基本概念 介绍 结构概览 如何做... 发送一个AJAX 请求 ...
JSF 使用 Bean 来达到逻辑层与表现层分离的目的,Bean 的管理集中在组态档案中,您只要修改组态档案,就可以修改 Bean 之间的相依关系。 o Backing Beans o Beans 的组态与设定 o Beans 上的 List, Map 数据转换与...