JavaServer Faces 는 쉽고, 유저 친화적인(user-friendly) 방법으로 웹 어플리케이션 만들기를 지원합니다. JavaServer Faces 개발에는 일반적으로 다음의 절차가 꼭 필요하며 예제를 통해 살펴 보겠습니다.
- 컴포넌트 태그를 이용하여 웹 페이지 만들기
- 관리되는빈(managed beans) 개발하기
- FacesServlet 매핑하기
HelloWorld!! 출력하기
모든 언어의 기본 출발점… HelloWorld!! 를 브라우저에 출력 해보겠습니다.
이클립스에서 웹서버를 신규로 등록합니다.
Dynamic Web Project를 hello 라는 이름으로 새로 만드세요.
프로젝트의 카테고리를 펼쳐 WebContent/WEB-INF/lib 폴더에 JSF 라이브러리 및 JSTL 라이브러리 파일을 복사해 넣어주세요.
web.xml 에 아래의 내용을 추가 해 주세요.
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <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>*.xhtml</url-pattern> </servlet-mapping> </web-app>
JavaBean 클래스를 Hello 라는 이름으로 새로 만들고 아래의 내용을 입력해주세요.
package hello; import javax.faces.bean.ManagedBean; @ManagedBean public class Hello { private final String world = "Hello World!!"; public String getWorld() { return world; } }
WebContent 아래에 hello.xhtml 이라는 이름으로 view page 하나 만들고 내용을 아래와 같이 입력해주세요.
<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"> <h:head> <title>Hello World Example</title> </h:head> <h:body> #{hello.world} </h:body> </html>
모든 준비가 완료 되었습니다. 이제 이클립스에서 Tomcat 웹서버를 실행하고 브라우저에서 아래의 주소를 입력하여 HelloWorld!! 가 출력되는지 확인 해보세요.
http://localhost:8080/hello/hello.xhtml
동작 설명
JavaServer Faces 어플리케이션 뿐만 아니라 대부분의 웹 어플리케이션은 라이프사이클이 존재 합니다. 먼저 이번 예제가 실행될때 JavaServer Faces 컨테이너에서 일어나는 일에 대해 간단히 정리 하겠습니다.
- 클라이언트로부터 서버로 요청이 시작됩니다.
- JavaServer Faces 어플리케이션의 뷰가 생성되거나 복원을 합니다.
- 요청 파라메터 값을 반영 합니다.
- 컴포넌트 값에 대한 변환(conversion) 과 검증(validation) 이 수행됩니다.
- 컴포넌트의 값을 가지고 Managed beans 가 업데이트 됩니다.
- 어플리케이션의 로직이 호출 됩니다.
클라이언트로 부터 요청이 처음일 경우에는 뷰가 생성이 되며, 이후 부터는 동일한 요청에 대해서는 뷰를 복원하게 됩니다. 위와 같이 몇가지 작업이 일어난 후 최종적으로는 클라이언트가 해석 할 수 있는 HTML 이 만들어지게 됩니다.
이상으로 초간단 JavaServer Faces 어플리케이션을 만들어 보았습니다. 다음 블로그 글에서는 JavaServer Faces 에서 아주 중요하고 꼭 이해해야만 하는 라이프 사이클에 대해 알아 보겠습니다.
'공부 > JSF' 카테고리의 다른 글
JSF 라이프 사이클 상세 (0) | 2014.10.06 |
---|---|
JSF 라이프 사이클 개요 (0) | 2014.10.05 |
JavaServer Faces 어플리케이션 개발 준비 (0) | 2014.10.04 |
Facelets 란 무엇인가? (0) | 2014.10.02 |
JavaServer Faces 버전 히스토리 (0) | 2014.10.02 |