Rational Developer V6.0.0.1을 사용하면 다중 페이지
SDO 응용프로그램을 쉽게 작성할 수 있습니다.
다음 예제는
Rational Developer의 새 기능을 사용하여 다중 페이지 SDO 응용프로그램을 쉽게 작성하는 방법을
보여줍니다. 이 기능들은 Rational Development Software Platform에서
Relational, SAP, Siebel 및 PeopleSoft SDO 도구와 함께 작동합니다.
지금은 빠른 편집/스니펫 메뉴(서브레코드/RecordList 찾기 및
서브레코드 작성)에 새 항목이 있어서 SDO 작성 마법사를 사용하여 알려진 범위로부터
SDO 오브젝트를 가져올 수 있다는 점에 유의하십시오.
다음 예제에서는 DB2 8.2
SAMPLE 데이터베이스를 사용합니다. 이 예제에서는 데이터베이스에서 부서 및 해당 사원 정보를
갱신 및 관리하는 일련의 웹 페이지를 작성하게 됩니다.
한 페이지(updateDepartment.jsp)가 마스터 갱신 페이지 역할을 하며
부서 이름, 관리자 번호, 관리 부서 및 위치를 갱신하기 위한 필드들을 포함합니다.
이 페이지에는 부서의 사원 목록도 표시됩니다. 그런 다음 이 부서에 추가할 새 사원의 세부사항을 갱신할
두 번째 페이지(createEmployee.jsp)를 작성합니다.
이 예제는 CreateEmployee 페이지에서 본 페이지와는 다르며
새 사원 레코드를 데이터베이스로 플러시하는 페이지가 아닙니다.
작성된 새 사원들은 updateDepartment 페이지를 제출할 때만
데이터베이스에 추가됩니다.
시작하려면, 먼저 웹 버전 2.4를 사용하여 동적 웹 프로젝트를
작성하십시오. 이 프로젝트는 V6 WebSphere Application Server에서 대상으로
지정됩니다. 그런 다음 두 개의 faces JSP(updateDepartment.jsp
및 createEmployee.jsp)를 작성하십시오.
마지막으로 Page Designer에서 updateDepartment.jsp를 열고
다음 단계를 완료하십시오.
- 페이지 데이터 보기에서 새 '관계형 레코드'를 작성하십시오.
- 이름 department를 입력하십시오. ".. 레코드 채우기" 옵션이 선택되어 있는지
확인하십시오.
- 데이터베이스 연결을 작성하거나 선택하십시오.
- 테이블 목록에서 DEPARTMENT를 선택하고 다음 페이지로 이동하십시오.
- '관계를 통해 다른 테이블 추가'를 선택하십시오.
- 마법사에서 '관계 새로 작성'을 선택하십시오.
- EMPLOYEE 테이블을 선택한 후 다음 페이지로 이동하십시오.
- 1차 키로 EMPNO를 선택하십시오.
- '1 - * Primary to Foreign'으로 복합성을 선택하십시오.
- 외부 키 열로 WORKDEPT 열을 선택하십시오.
- 완료를 선택하십시오.
- 트리 보기(아래에 표시)에 DEPARTMENT_EMPLOYEE라고 하는
관계 노드가 표시되는지 확인하십시오.
- EMPLOYEE 테이블에서 EMPNO, FIRSTNME, MIDINIT,
LASTNAME, WORKDEPT 및 EDLEVEL을 제외하고 모든 열을 선택 취소하십시오.
- 관계형 레코드 추가 마법사를 완료하십시오.
- 다음으로 관계형 레코드를 페이지로 끌어다 놓으십시오.
- '기존 레코드 갱신'을 선택한 후 '완료'를 클릭하여
JSP 페이지에 양식을 생성하십시오. 그런 다음 JSP를 저장하십시오.
- 디자인 보기를 마우스 오른쪽 단추로 클릭하고 '페이지
코드 편집'을 선택하십시오. 기본적으로,
JSF 페이지에 대한 서버 코드를 포함하는 Java 파일이 표시됩니다. 메소드
getDepartment() & getDepartmentMediator()가 작성되는지 확인하십시오.
- getDepartment() 메소드를 다음으로 바꾸십시오.
public DataObject getDepartment() {
if (department == null) {
if(!getSessionScope().containsKey("department")){
doDepartmentFetchAction();
getSessionScope().put("department", department);
} else
department = (DataObject) getSessionScope().get("department");
}
return department;
}
- Java 파일을 저장하십시오.
- JSP로 전환하십시오. 삭제 단추 옆에 있는 명령 - 하이퍼링크를 끌어다 놓으십시오.
링크 이름을 '사원 추가'로 지정하십시오.
- 명령 - 하이퍼링크에 대해 빠른 편집 보기(QEV)를 활성화하고
명령 이벤트를 선택하십시오.
- 이벤트 핸들러를 마우스 오른쪽 단추로 클릭하고 스니펫 삽입 -> 서브레코드
작성을 선택하십시오(아래 참조).
- EMPLOYEE 노드를 선택하십시오. 그런 다음 변수 이름 필드에서 사원을 입력하고
변수 범위 풀다운에서 세션을 선택하십시오.
- 다음 코드가 QEV에 삽입되는지 확인하십시오.
//actionBegin: wdo.createsub.record
DataObject employeeListParent = getRootDataObject(getDepartment()).getDataObject("DEPARTMENT[1]");
DataObject employeeList = getRootDataObject(getDepartment()).createDataObject(" EMPLOYEE");
employeeListParent.getList("DEPARTMENT_EMPLOYEE").add(employeeList);
getSessionScope().put("employeeList", employeeList);
//actionEnd: wdo.createsub.record
- 탐색 규칙을 추가하여 createEmployee.jsp로 이동하십시오. (탐색 규칙 작성에 대한 정보는
Faces JSP 페이지에 대해 탐색 규칙 사용을 참조하십시오.) 그런 다음
JSP를 저장하십시오.
- 데이터 카테고리 아래에 있는 팔레트에서 관계형 레코드를 선택하고(아래 참조)
이름 필드에 employee를 입력하십시오.
- '범위에서 기존 레코드 또는 레코드 목록 검색' 옵션을 선택하십시오.
'메타데이터 정의 재사용...' 옵션이 선택되어 있는지 확인하십시오.
- 찾아보기 단추를 클릭하고 이전에 작성한 SDO
메타데이터 파일(예: department.xml)을 선택하십시오. '레코드 작성' 옵션이
사용 불가능하게 되어 있는지 확인하십시오. 그런 다음
'레코드 갱신' 옵션을 선택하십시오.
- 다음을 선택하여 다음 페이지로 이동한 후
노드 DEPARTMENT_EMPLOYEE를 선택하십시오.
그런 다음 완료를 선택하십시오.
- 페이지 데이터 보기에 EMPLOYEE 테이블에 대한 관계형 레코드가 표시되고
페이지에 EMPLOYEE 테이블을 갱신하기 위한 양식이 생성되었는지 확인하십시오.
- 갱신 단추를 클릭하고 QEV를 활성화한 후 명령 이벤트를
선택하십시오.
- 탐색 규칙을 추가하여
updateDepartment.js로 되돌아가십시오. 그런 다음 JSP를 저장하십시오.
- 프로젝트 네비게이터 보기에서 JSP updateDepartment.jsp를 선택하고
'서버에서 실행'을 선택하십시오.
- V6 WebSphere 서버를 선택하십시오. 그러면 페이지에서 브라우저가 실행됩니다.
DataObject에 조건을 설정하지 않은 경우에는 레코드가 표시되지 않습니다.
이러한 경우, 브라우저에서 테이블의 DEPTNO에 해당되는 ?DEPTNO=XXXXX를 추가하여
URL을 편집하십시오(예: DEPTNO=E01).
- Enter를 누르면 DEPARTMENT dataObject와 해당되는 데이터가 표시됩니다.
- '사원 추가' 링크를 클릭하십시오. 링크에서 createEmployee.jsp에서 사원을 입력할 수 있는
양식이 열립니다. 제출을 선택하십시오. 그러면 updateDepartment.jsp로 되돌아갑니다.
DEPARTMENT에 추가한 새 EMPLOYEE가 포함됩니다.
- 사원을 더 추가하고 updateDepartment.jsp로 제출하여
DEPARTMENT 및 해당되는 새 EMPLOYEE를 갱신하거나 데이터베이스에 추가하십시오.
- 프로젝트 탐색기 보기의 데이터베이스 서버 노드 아래에서 EMPLOYEE 테이블을 찾아서
마우스 오른쪽 단추를 클릭하고 '샘플 컨텐츠'를 선택하십시오. DB 출력 보기가 열립니다.
추가한 EMPLOYEE가 데이터베이스에 있는지 확인하십시오.