JSF学習1


開発ツール:MyEclipse 8.5+Tomcat 6.0
新しいプロジェクト/WEB-INF/libディレクトリの下でjarパッケージをコピーします.
* jsf-impl.jar
* jsf-api.jar
* commons-digester.jar
* commons-collections.jar
* commons-beanutils.jar
* jstl.jar
* standard.jar
web.xml:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
	version="2.4">
	<description>
JSF Demo
</description>
	<display-name>JSF Demo</display-name>
	<servlet>
		<servlet-name>Faces Servlet</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>*.faces</url-pattern>
	</servlet-mapping>
<welcome-file-list>
  <welcome-file>index.faces</welcome-file>
</welcome-file-list>
</web-app>

classesディレクトリの下:
UserBean.java:

package onlyfun.caterpillar;

public class UserBean {
	private String name;

	public void setName(String name) {
		this.name = name;
	}

	public String getName() {
		return name;
	}
}


/WEB-INF/faces-configを定義する.xml:

<?xml version="1.0"?>
<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
"http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
<faces-config>
	<navigation-rule>
		<from-view-id>/pages/index.jsp</from-view-id>
		<navigation-case>
			<from-outcome>login</from-outcome>
			<to-view-id>/pages/welcome.jsp</to-view-id>
		</navigation-case>
	</navigation-rule>
	<managed-bean>
		<managed-bean-name>user</managed-bean-name>
		<managed-bean-class>
			onlyfun.caterpillar.UserBean
</managed-bean-class>
		<managed-bean-scope>session</managed-bean-scope>
	</managed-bean>
</faces-config>

index.jsp:

<%@taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@page contentType="text/html;charset=GB2312"%>
<html>
<head>
<title>   JSF  </title>
</head>
<body>
<f:view>
<h:form>
<h3>       </h3>
  : <h:inputText value="#{user.name}"/><p>
<h:commandButton value="  " action="login"/>
</h:form>
</f:view>
</body>
</html>

welcome.jsp:

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@page contentType="text/html;charset=GB2312"%>
<html>
<head>
<title>   JSF  </title>
</head>
<body>
<f:view>
<h:outputText value="#{user.name}"/>   !
<h3>     JavaServer Faces!</h3>
</f:view>
</body>
</html>

注意ブラウザで入力:http://localhost:8080/JSFDemo/index.faces
(接尾辞は.faces)