Download presentation
Presentation is loading. Please wait.
1
JSPの作成 J2EE II 第3回 2005年4月10日
2
ここでの内容 JSFでのJSPの作り方と動かし方について学ぶ。
3
JSFでのJSPの記述
4
概要 タグライブラリを利用してJSPページを作成する。 基本的には、タグライブラリ中のカスタムタグがUIコンポーネントに対応する。
5
簡単なJSPのサンプル page contentType="text/html; charset=Shift_JIS" %> taglib uri=" prefix="h" %> taglib uri=" prefix="f" %> <html> …… <f:view> <h:form id="searchForm"> <p>何か入力してね !</p> <h:inputText id="word" /> </h:form> </f:view>
6
タグライブラリの利用を宣言 <%@ taglib uri="http://java.sun.com/jsf/html"
prefix="h" %> HTML tag HTML 出力に関係するタグ taglib uri=" prefix=“f” %> Core tag HTML出力とは関係ないタグ
7
f:view 要素 <f:view> <h:form> …… </h:form>
JSF のタグは、すべて f:view タグの中に記述する。 JSFのタグの「コンテナ」としての働き
8
h:form 要素 <f:view> <h:form> …… </h:form>
フォームを表すUIコンポーネント HTMLのformタグを表す
9
h:input 要素 <h:form> <h:inputText id="word" />
テキスト入力用のUIコンポーネント HTMLでは <input type=“text”> となる
10
id 属性 <h:form id="searchForm"> <p>何か入力してね !</p>
<h:inputText id="word" /> </h:form> id は f:view 要素の中でそれぞれ違っている必要がある。 id は省略できる。その場合は JSF により自動的に id がつけられる。
11
JSP全体 (再掲) page contentType="text/html; charset=Shift_JIS" %> taglib uri=" prefix="h" %> taglib uri=" prefix="f" %> <html> …… <f:view> <h:form id="searchForm"> <p>何か入力してね !</p> <h:inputText id="word" /> </h:form> </f:view>
12
生成されたHTMLソース <form id="searchForm" method="post" action="/jsf-test01/jsp/test.jsp;jsessionid=0DF696E1084D276D5841AF0EE3DA9D66" enctype="application/x-www-form-urlencoded"> <p>何か入力してね !</p> <input id="searchForm:word" type="text" name="searchForm:word" /> <input type="hidden" name="searchForm" value="searchForm" /> </form>
13
JSP を動かす
14
Tomcat への配置 jsf-test01 --- test.jsp |- WEB-INF/ ---- web.xml
|-- faces-config.xml |-- lib/ |- (ライブラリ)
15
必要なライブラリ (1) JSFの lib フォルダ中にある jar ファイルを WEB-INF/lib にコピー
commons-beanutils.jar commons-collections.jar commons-digester.jar commons-logging.jar jsf-api.jar jsf-impl.jar
16
必要なライブラリ (2) JSTL の lib フォルダ中にある jar ファイルを WEB-INF/lib にコピー jstl.jar
standard.jar
17
faces-config.xml の作成 <?xml version="1.0"?> ……
今回はまだ空
18
web.xml の編集 (1) <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> <url-pattern>/jsp/*</url-pattern> </servlet-mapping>
19
web.xml の編集 (2) servlet 要素
Controller で使う Servlet を指定する。 load-on-startup 要素は、この (JSFを使った) Webアプリケーションの起動時に、1つの Servlet が動作することを示す。
20
web.xml の編集 (3) servlet-mapping 要素
<url-pattern>/jsp/*</url-pattern> JSF では、Webブラウザからの要求は、すべて FacesServlet が処理をする。 JSP の表示も例外ではない。 JSP を表示するときは、この /jsp を含めた名前でアクセスする。
21
JSPを呼び出すURL http://localhost:8080/jsf-test01/jsp/test.jsp
jsf-test01 の直下にあるからといって、 にアクセスしてもエラーになる。 なぜなら、JSPの表示もすべて FacesServlet を経由する必要があるから。
22
Tomcat への配置 jsf-test01 --- test.jsp |- WEB-INF/ ---- web.xml
|-- faces-config.xml |-- lib/ |- (ライブラリ)
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.