最近好久没有发帖了,有点懒了(*^__^*)

最近刚做完一个 jsf的小例子,麻雀虽小,但是五脏俱全。下面我就把 它贴出来,具体的配置文件可以看 附件


下面我贴的都是配置中的一部分,都是需要注意的地方

1: web。xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- spring app 上下文-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/appconfig/appcontext_resource.xml,/WEB-INF/appconfig/appcontext_dao.xml,/WEB-INF/appconfig/appcontext.xml</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation1</param-name>
<param-value>WEB-INF\classes\log4j.properties</param-value>
</context-param>
<!-- 如果 faces-config.xml不在/WEB-INF下,需要指定位置,如下代码
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/xxx/faces-config.xml</param-value>
</context-param>
-->


<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>com.rain.ralf.servlet.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>ignore</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- spring 监听器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 配置 jsf -->
<servlet>
<display-name>FacesServlet</display-name>
<servlet-name>FacesServlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet>
<servlet-name>log4j-init</servlet-name>
<servlet-class>com.rain.ralf.servlet.Log4jInit</servlet-class>
<init-param>
<param-name>log4jConfigLocation</param-name>
<param-value>WEB-INF\classes\log4j.properties</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>FacesServlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
</web-app>


2:face-config.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN" "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

<faces-config>

<managed-bean>
<managed-bean-name>addUser</managed-bean-name>
<managed-bean-class>com.rain.ralf.web.addUserBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>userServiecs</property-name>
<value>#{userServiecs}</value>
</managed-property>

</managed-bean>






<navigation-rule>
<description>add user</description>
<from-view-id>/pages/addUser.jsp</from-view-id>
<navigation-case>
<from-outcome>sucess</from-outcome>
<to-view-id>/pages/Sucess.jsp</to-view-id>
</navigation-case>
</navigation-rule>
</navigation-rule>



<!-- 写在最后 用sprig的变量解析器代替jsf的变量解析器-->
<application>
<variable-resolver>org.springframework.web.jsf.DelegatingVariableResolver</variable-resolver>
</application>





</faces-config>

这里需要注意红色部分的地方,其实jsf本身就使用的ioc的思想,所以通过红色部分你可以直接在代码中直接 使用 service对象 。例如在 com.rain.ralf.web.addUserBean这个backbean中使用业务层的对象


public class addUserBean {

private UserService userServiecs;
public void setUserServiecs(UserService userServices) {
this.userServiecs = userServices;
}


public String addUser() {


try {
userServiecs.insertUserServices(uv);
return "sucess";
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}

}

这样红色字体的 userServiecs对象就能直接使用了 ,其他的配置文件可以参考附件
  • config.rar (3.6 KB)
  • 描述: 包括web.xml,face-config.xml,appcontext.xml
  • 下载次数: 308
评论
lxdhdgss 2008-04-07
这个文章还是比较有用的!
mawt 2007-07-06
顶,看看,准备研究研究这个
leaderbird 2007-05-15
能不能有一个完整的项目,最好是包括lib的还有数据脚本,这样对于其他朋友学习和入门都会轻松一些,能给我发一个吗?lsl-120@163.com
本人万分感激
ajxn 2007-03-02
顶一下!!好东西!
发表评论

您还没有登录,请登录后发表评论

ralf_realman
搜索本博客
博客分类
最近加入圈子
存档
最新评论
评论排行榜