웹 트랜잭션에 JavaServer 페이지 사용
VGUIRecord 소스 파일을 저장하면 VGUIRecord 파트의 필드에 따라 기본 JSP 파일이 작성됩니다. 이 기본 JSP를 편집하여 JSP의 모양 또는 여기에 표시되는 데이터를 변경할 수 있습니다. JSP 기술에 대한 자세한 정보는 JSP(JavaServer Pages) 기술
JSP(JavaServer Pages) 파일은 ASCII 접미부가 .jsp이며 HTML 태그와 JSP 구문이 혼합된 내용을 포함하는 파일입니다. 웹 애플리케이션 서버는 페이지 컴파일이라는 프로세스를 통해 JSP 파일을 Java™ 서블릿으로 변환합니다.
스크립틀릿
스크립틀릿이라고 하는 Java 코드 조각을 JSP 파일에 삽입할 수 있습니다. 스크립틀릿은 JSP 소스의 어느 위치에든 배치할 수 있습니다. 런타임 시에 스크립틀릿에 있는 Java 코드는 서버 측에서 실행되지만, Java 코드 자체는 브라우저에 전송되는 HTML에 포함되지 않습니다. UI 레코드 Bean에 고유한 메소드는 UI 레코드 Bean API에서 다루고 있습니다.
다음 코드는 간단한 스크립틀릿을 나타냅니다.
<% if (x == 1) {out.println(EMPNO.getLabel())}; %>
스크립틀릿의 Java 코드는 out PrintWriter 오브젝트에 문자열을 인쇄하여 HTML에 추가할 수 있습니다. 이 out 오브젝트는 JSP의 페이지 컴파일 프로세스의 일부로 작성되고 스크립틀릿에서 사용 가능하게 됩니다. out 오브젝트는 문자열만 허용합니다. 문자열 유형이 아닌 다른 유형을 인쇄해야 하는 경우에는 먼저 해당 유형을 문자열로 변환해야 합니다.
out 오브젝트에 인쇄하는 방법에는 세 가지가 있습니다.
- <% out.print(string_value); %>
- 이 스크립틀릿은 스크립틀릿의 위치에 있는 HTML 코드에 문자열 string_value를 추가합니다.
- <% out.println(string_value); %>
- 이 스크립틀릿은 스크립틀릿의 위치에 있는 HTML 코드에 문자열 string_value를 추가한 후 캐리지 제어 문자를 추가합니다. 캐리지 제어 문자를 추가하면 다음 HTML 코드를 다음 행에서 시작하여 소스 코드의 가독성이 높아집니다. 이 캐리지 리턴은 브라우저에서의 HTML 모양에 영향을 주지 않으며 HTML <br> 태그와 같은 효과를 발휘하지 않습니다.
- <% string_value %>
- 이 스크립틀릿은 <% out.print(string_value); %>와 동격입니다.
이와 같이, 스크립틀릿을 사용하면 VGUIRecord의 데이터에 액세스하고 페이지에서 이 데이터를 사용할 수 있습니다. UI 레코드 Bean에 액세스하는 데 필요한 특정 메소드는 UI 레코드 Bean API의 내용을 참조하십시오.
Bean 태그
VGUIRecord와 함께 사용하기 위해 작성된 JSP 파일은 UI 레코드 Bean을 참조합니다. 이 UI 레코드 Bean은 JSP의 스크립틀릿에 VGUIRecord에 있는 데이터에 대한 액세스를 제공합니다. 이 JSP 파일은 <jsp:useBean> 태그를 사용하여 이 Bean을 참조합니다.
예를 들어, 다음 코드는 JSP 파일에서 사용될 Bean을 참조합니다.
<jsp:useBean id="referenceName"
class="beanClassName"
type="interfaceName"
scope="beanScope" />
- referenceName
- Bean의 이름입니다. JSP 파일에 있는 다른 스크립틀릿은 <jsp:useBean> 태그에 정의된 이름을 참조하여 이 Bean을 사용할 수 있습니다.
- beanClassName
- java.lang.String과 같은 Bean의 완전한 클래스 이름입니다.
- interfaceName
- Bean에 의해 구현되는 인터페이스입니다. 이 속성은 선택사항입니다.
- beanScope
- Bean의 범위입니다. 올바른 값은 다음과 같습니다.
- session
- Bean이 HttpSession 오브젝트에 저장됩니다.
- request
- Bean이 HttpServletRequest 오브젝트에 저장됩니다.
- page
- Bean이 JSP 페이지 컨텍스트에 저장됩니다.
- application
- Bean이 서블릿 컨텍스트에 저장됩니다.
지시문
JSP 파일은 JSP 지시문도 포함할 수 있습니다. 이러한 지시문 중 두 가지는 웹 트랜잭션에 대해 작업할 때 중요합니다.
import 지시문을 사용하면 Java import 문을 추가할 수 있습니다. 이러한 import 문은 JSP의 모든 스크립틀릿에 적용됩니다. Java import 문을 사용하면 패키지 내의 요소를 참조할 때 모든 위치에서 패키지의 완전한 이름을 모두 입력할 필요가 없습니다.
VGUIRecord와 함께 사용하기 위해 작성된 각 JSP 파일에 다음 import 지시문을 추가하십시오.
<%@ page import = "com.ibm.vgj.uibean.VGDataElement" %>
errorPage 지시문은 미발견 예외에 대한 응답으로 브라우저에 전달할 웹 페이지를 지정합니다. 예를 들어, UI 레코드 JSP가 UI 레코드 Bean에 대한 호출에서 올바르지 않은 배열 색인을 지정하는 경우에는 errorPage 지시문에 지정된 JSP가 오류를 처리합니다.
CSOERRORUIR.jsp가 TCP/IP 통신 문제점 및 웹 트랜잭션 내부 문제점을 보고하기 위해 사용자 정의하는 오류 페이지라 하더라도 CSOERRORUIR.jsp를 errorPage 지시문에 지정하지 마십시오. CSOERRORUIR.jsp가 모든 오류를 표시하도록 하려면 errorPage="vagen1error.jsp"를 지정하십시오.
다음 예제는 errorPage 지시문을 나타냅니다.
<%@ page errorPage="jspName.jsp" %>