목차
추천사 ... ⅲ
서문 ... ⅴ
감사의 말 ... ⅷ
한국 독자에게 ... xi
역자 서문 ... xiii
역자 소개 ... xv
이 책에 대하여 ... xvi
PART 1 Seam을 시작하기 ... 1
제1장 Jave EE를 통합하는 Seam ... 2
1.1 어떤 프레임워크를 써야 할까? ... 3
1.2 Seam을 선택하기 ... 5
1.3 Seam의 통합 방식 ... 11
1.4 Seam과 함께 첫 스윙 ... 19
1.5 Seam의 핵심 경쟁력 ... 31
1.6 요약 ... 40
제2장 seam-gen을 작업에 적용하기 ... 43
2.1 Open18 프로토타입 애플리케이션 ... 44
2.2 seamgen을 사용한 초기 작업 ... 51
2.3 seam-gen을 사용한 프로젝트 시작 ... 55
2.4 JBoss AS에 프로젝트 디플로이하기 ... 68
2.5 눈으로 직접 확인하고 토론한 뒤 수정하기 ... 78
2.6 seam-gen 프로젝트의 빠른 개발 ... 97
2.7 요약 ... 119
PART 2 Seam의 기초 ... 121
제3장 Seam 라이프사이클 ... 123
3.1 Seam이 요청에 참여하는 방법 ... 124
3.2 Seam 없는 JSF 라이프사이클 ... 142
3.3 Seam의 페이지 지향적인 라이프사이클 추가 ... 154
3.4 내비게이션과 페이지 액션의 결합 ... 173
3.5 Seam의 JSF 라이프사이클 ... 182
3.6 라이프사이클 주변의 try-catch 영역 ... 187
3.7 요약 ... 191
제4장 컴포넌트와 컨텍스트 ... 193
4.1 Seam의 컨텍스트 네이밍 컨테이너 ... 194
4.2 컴포넌트 개념 정리 ... 201
4.3 어노테이션을 사용한 컴포넌트 정의 ... 205
4.4 간단한 컴포넌트 예제 ... 210
4.5 컴포넌트의 일생 ... 225
4.6 Seam에서 EJB 3 세션 빈 사용하기 ... 242
4.7 컴포넌트 접근하기 ... 254
4.8 요약 ... 268
제5장 Seam 컴포넌트 디스크립터 ... 270
5.1 XML로 컴포넌트 정의하기 ... 271
5.2 컴포넌트 디스크립터의 XML 네임스페이스 ... 278
5.3 컴포넌트 프로퍼티 설정 ... 293
5.4 컴포넌트 정의 vs. 컴포넌트 설정 ... 318
5.5 내장 컴포넌트 설정과 활성화 ... 321
5.6 요약 ... 327
제6장 Inversion of control ... 329
6.1 바이젝션 : 진화된 의존성 주입 ... 330
6.2 동적인 의존성 @In-jection ... 336
6.3 @Out-jection 컨텍스트 변수들 ... 346
6.4 바이젝션 분기 ... 365
6.5 컴포넌트 이벤트 ... 373
6.6 사용자 정의 메서드 인터셉터 ... 382
6.7 팩토리와 관리자 컴포넌트 ... 388
6.8 요약 ... 403
PART 3 Seam의 상태 관리 ... 405
제7장 컨버세이션 : SEAM의 작업 단위 ... 406
7.1 적정한 상태 관리 배우기 ... 407
7.2 컨버세이션 컨텍스트 ... 413
7.3 컨버세이션 경계 수립 ... 418
7.4 컨버세이션을 따로 놓기 ... 446
7.5 컨버세이션 간의 전환 ... 453
7.6 페이지 플로우로 컨버세이션 조정하기 ... 467
7.7 특별 컨버세이션 ... 478
7.8 요약 ... 482
제8장 자바 영속성에 대한 이해 ... 484
8.1 자바 영속성의 원리 ... 485
8.2 엔티티와 관계 ... 489
8.3 영속성 유닛 ... 493
8.4 영속성 관리자 ... 500
8.5 트랜잭션 ... 504
8.6 엔터프라이즈 애플리케이션 내에서 영속성 관리 ... 510
8.7 JPA와 하이버네이트 선택 ... 522
8.8 요약 ... 527
제9장 Seam 관리 영속성과 트랜잭션 ... 528
9.1 속성 컨텍스트 관리로 바로 들어가기 ... 529
9.2 영속성 관리자의 기능 강화 ... 534
9.3 Seam에서 영속성 단위 설정 ... 542
9.4 Seam의 트랜잭션 지원 ... 554
9.5 요약 ... 568
제10장 Seam을 사용한 신속한 개발 ... 570
10.1 프레임워크 내의 프레임워크 ... 571
10.2 Home 컴포넌트를 사용한 유상태 CRUD ... 579
10.3 피드백 제공하기 ... 618
10.4 QUERY 컴포넌트를 사용한 스마트 쿼리 ... 624
10.5 요약 ... 648
PART 4 비즈니스 요구사항에 몰입하기 ... 651
제11장 Seam 애플리케이션 보안 ... 653
11.1 인증 ... 654
11.2 페이지 보안 ... 673
11.3 역할 기반의 권한 부여 ... 686
11.4 Drools를 사용한 규칙 기반 권한 부여 ... 696
11.5 사람으로부터 컴퓨터를 분리하기 ... 711
11.6 요약 ... 714
제12장 Ajax와 JavaScript 리모팅 ... 715
12.1 JSF로 Ajax 사용하기 ... 716
12.2 부분 폼 전송 ... 726
12.3 ICEfaces의 Ajax Push ... 733
12.4 Seam의 JavaScript 리모팅 ... 736
12.5 컨버세이션 리모팅 호출 ... 756
12.6 GWT 리모팅 호출에 응답 ... 760
12.7 요약 ... 765
제13장 파일ㆍ풍부한 표시ㆍ이메일 지원 ... 767
13.1 파일 업로드 및 동적 이미지 표시 ... 768
13.2 iText를 사용한 PDF 생성 ... 776
13.3 JFreeChart를 이용한 빠르고 쉬운 차트 생성 ... 792
13.4 Seam의 형태로 이메일 구성하기 ... 800
13.5 리소스 번들을 사용한 주문형 UI ... 816
13.6 요약 ... 825
부록 A Seam 초심자 가이드 ... 827
A.1 사전 준비 과정 ... 828
A.2 Seam 배포판 다운로드 ... 835
A.3 Seam-gen과 Open18 예제 애플리케이션 ... 838
A.4 Seam-gen 프로젝트 내의 라이브러리 관리 ... 841
A.5 Seam 프로젝트에 Maven 2 프로젝트 의존성 해결 기법 추가하기 ... 842
찾아보기 ... 845
닫기