구조 및 환경설정

본 장에서는 OpenFrame GW 웹 터미널에서 제공하는 사용자 스크립트를 사용하는 방법에 대해 기술한다.

1. war 파일 구조

사용자에게 제공되는 war 파일의 구조는 아래와 같다.

+<WebTerminal.war>
  +-- css
  +-- icons
  +-- resources
        |-- webterminal.properties
        |-- webterminal-shortcut-table.json
  +-- scripts
  +-- uilib
  +-- WEB-INF
        |-- classes
        |-- jeus-web-dd.xml
        |-- web.xml
  +-- META-INF
  |-- wsgateway.html

다음은 제공되는 webterminal.war 파일의 각 폴더 및 파일에 대한 설명이다.

css

화면 출력 및 프린트 출력을 위한 css 파일들을 포함한다.

icons

화면 로딩 이미지 및 Input Field Mark 이미지를 포함한다.

resources

웹 터미널을 사용하는 데 필요한 다음의 설정 파일이 저장된다.

파일 설명

webterminal.properties

웹 터미널 엔진의 설정 정보를 저장한다. 자세한 내용은 설정 파일을 참고한다.

webterminal-shortcut-table.json

웹 터미널 엔진에서 불러오는 단축키 설정들이 기재되어 있는 JSON 형식의 파일이다.

다음은 webterminal-shortcut-table.json 파일의 일부이다.

{
  "CLEAR": [["R-CTRL", "ENTER"], ["PAUSE"]],
  "CURSOR_SHAPE": [["R-CTRL", "INSERT"]],
  "ENTER": [["ENTER"]],
  "ERASE_EOF": [["R-CTRL", "SHIFT", "F4"], ["SHIFT", "DELETE"]],
  "ERASE_EOF_TAB": [["R-CTRL", "SHIFT",  "H"]],
  "IME": [["HANKAKU/ZENKAKU"], ["KANJI"]],
  "FIRST_FIELD": [["HOME"]],
  "PREVLINE_TAB": [["PAGE_UP"]],
  "NEXTLINE_TAB": [["PAGE_DOWN"]],
  "SELECT_ALL": [["ALT", "A"]],
  "DISCONNECT": [["ESCAPE"]],
  "RESET": [["L-CTRL"]],
  ...
}
scripts

통신 및 화면 출력을 위한 JS 파일들을 포함한다.

uilib

웹 터미널에서 사용하는 UI 라이브러리 디렉터리이다.

META-INF

DD(Deployment Descriptor) 파일에 대한 디렉터리이다(웹 터미널에서는 사용하지 않는다).

WEB-INF

웹 애플리케이션을 실행하는 데 필요한 클래스 파일 및 설정 파일 등이 저장되는 디렉터리이다.

Java EE 표준인 웹 애플리케이션 DD인 web.xml 파일과 JEUS의 웹 애플리케이션 DD(Deployment Descriptor)인 jeus-web-dd.xml 파일이 위치한다.

파일 설명

jeus-web-dd.xml

애플리케이션의 <context-path>를 지정하는 설정 파일이다.

web.xml

url을 입력하여 애플리케이션에 접근할 때 컨텍스트 이름까지 입력하여 자동으로 지정된 파일의 페이지가 출력되도록 설정하는 파일이다.

wsgateway.html

초기 화면을 위한 html 파일이다.

2. 설정 파일

웹 터미널에서 사용하는 설정 파일 webterminal.properties는 resources 폴더에서 설정한다. 설정 파일의 내용은 웹 브라우저를 새로고침하는 경우 반영된다.

해당 파일은 다음의 경로에 위치한다.

$JEUS_HOME/domains/<domain_name>/servers/<server_name>/lib/application/webterminal/resources

webterminal.properties 속성 파일의 각 항목은 다음과 같다.

# Webterminal configurations
cpm = {US | JP | KR | FI | FR | TW}
sosi = {true | false}
size = {24:80 | 32:80 | 43:80 | 27:132}
caps_lock = {yes | no}
auto_tab = {yes | no}
auto_tab_paste = {true | false}
mask = {ip, port, lu}
rtrim = {true | false}
load_shortcut = {true | false}
use_ime_input = {true | false}
help_url =
protect_numeric = {true | false}
remove_newline = {true | false}
reset_insert = {true | false}
vertical_line = {left | middle | right}

# Color configurations
prot_intens = color
prot_normal = color
unprot_intens = color
unprot_normal = color
default_fg = color
outline_fg = color
항목 설명

cpm

사용자에 맞는 언어 테이블을 설정한다. (기본값 : US)

  • US : 영문 CPM 테이블이 기본값으로 설정된다. (ASCEBCUS:EBCASCUS)

  • JP : 일문 CPM 테이블이 기본값으로 설정된다. (ASCEBCJP:EBCASCJP)

  • KR : 한글 CPM 테이블이 기본값으로 설정된다. (ASCEBCKR:EBCASCKR)

  • FI : 핀란드어 CPM 테이블이 기본값으로 설정된다. (ASCEBCFI:EBCASCFI)

  • FR : 프랑스어 CPM 테이블이 기본값으로 설정된다. (ASCEBCFR:EBCASCFR)

  • TW : 대만어 CPM 테이블이 기본값으로 설정된다. (ASCEBCTW : EBCASCTW)

sosi

SOSI의 사용 여부를 설정한다.

  • true : Map에서 전달된 SOSI를 SPACE로 처리하여 터미널에 출력한다. (기본값)

  • false : Map에서 전달된 SOSI를 NULL로 처리하여 터미널에 출력하지 않는다.

size

웹 터미널을 사용하기 위한 교체 화면(Alternate Screen)의 크기를 설정한다.

  • 24:80 : 24행, 80열의 크기로 화면을 구성한다. (기본값)

  • 32:80 : 32행, 80열의 크기로 화면을 구성한다.

  • 43:80 : 43행, 80열의 크기로 화면을 구성한다.

  • 27:132 : 27행, 132열의 크기로 화면을 구성한다.

caps_lock

대문자의 사용 여부를 설정한다.

  • yes : 시스템의 Caps Lock 상태와 관계 없이 알파벳이 모두 대문자로 입력된다.

  • no : 알파벳 입력이 시스템의 키보드 입력과 동일하게 입력된다. (기본값)

auto_tab

입력 필드의 마지막까지 데이터가 입력되었을 경우의 커서 자동 이동을 설정한다.

  • yes : 입력 필드의 마지막까지 데이터가 입력되었을 경우 커서가 자동으로 다음 필드의 시작으로 이동한다.

  • no : 입력 필드의 마지막까지 데이터를 입력해도 커서가 다음 필드로 이동하지 않는다. (기본값)

auto_tab_paste

클립보드 데이터 붙여넣기를 할 때 입력 필드의 마지막까지 데이터가 입력되었을 경우 이후 데이터 처리 방식을 설정한다. (기본값 : true)

'auto_tab = no'일 경우 auto_tab_paste 설정에 상관없이 필드의 끝에서 입력이 중단된다.

  • true : 입력 필드의 마지막까지 데이터가 입력되었을 경우 남은 클립보드 데이터는 다음 필드에 입력된다. (기본값)

  • false : 입력 필드의 마지막까지 데이터가 입력되었을 경우 입력이 중단된다.

mask

연결이 맺어진 후 접속 정보의 마스킹 여부를 설정한다.

콤마(,)로 구분하여 동시에 여러 옵션을 설정할 수 있다.

  • ip : 웹 터미널 화면의 IP 정보를 'X'로 마스킹한다.

  • port : 웹 터미널 화면의 포트 번호 정보를 'X'로 마스킹한다.

  • lu : 웹 터미널 화면의 LU 정보를 'X'로 마스킹한다.

rtrim

붙여넣을 문자열에서 가장 오른쪽의 공백 및 개행문자 CRLF(\r\n)를 제거할지 여부를 설정한다.

  • true : 붙여넣을 문자열에서 가장 오른쪽의 공백 및 개행문자를 제거한다.

  • false : 붙여넣을 문자열에서 가장 오른쪽의 공백 및 개행문자를 제거하지 않는다. (기본값)

load_shortcut

webterminal-shortcut-table.json 파일에서 단축키 설정을 불러와 해당 웹 터미널에 접속한 모든 클라이언트들에게 같은 단축키 설정을 적용할지 여부를 설정한다.

  • true : 파일에서 단축키 설정을 불러와 웹 터미널 엔진에 적용한다.

  • false : 파일에서 단축키 설정을 불러오지 않는다. (기본값)

use_ime_input

한국, 중국, 일본 등 조합형 문자를 입력하는 경우 터미널 화면에서 문자 선택을 위한 INPUT BOX 사용 여부를 설정한다. INPUT BOX는 windows에서 제공하는 IME 기능을 사용하고 INPUT BOX를 사용하지 않는 경우는 웹 브라우저의 IME 기능을 사용한다.

  • true : 2bytes 입력 필드에서 INPUT BOX를 이용하여 문자를 입력한다.

  • false : 2bytes 입력 필드에서 INPUT BOX를 이용하지 않는다. (기본값)

help_url

현재 터미널 화면과 관련된 새로운 웹 페이지를 출력시킬 URL을 정의한다. 현재 OSC7과 연동하는 경우에만 지원한다.

SHORTCUT에 HELP Function에 정의된 키를 입력하는 경우 help_url에 정의된 값(URL 값) 뒤에 출력된 화면의 MAP 이름까지로 완성된 주소의 웹 페이지 화면을 출력시킨다. help_url에 값이 지정되어있는 경우에만 [SHORTCUT] 메뉴에서 HELP Function이 활성화된다.

웹 터미널에서는 MAP 이름이 포함된 URL 값으로 웹 페이지 출력까지의 기능을 제공하고, 해당 웹 페이지에 출력시킬 데이터는 고객 환경에 맞춰 자유롭게 만들어 사용할 수 있다.

(예: 현재 터미널에 출력된 MAP 관련 도움말 화면)

protect_numeric

Numeric 속성 입력 필드의 문자 입력 처리 기본값 대해 설정한다.

  • true : 숫자(-.0123456789)만 입력을 허용한다. (기본값)

  • false : 숫자(-.0123456789) 외 문자도 입력을 허용한다.

remove_newline

붙여넣을 문자열에서 가장 오른쪽 개행문자 CRLF(\r\n)만 제거할지 여부를 설정한다.

  • true : 붙여넣을 문자열에서 가장 오른쪽의 개행문자를 제거한다.

  • false : 붙여넣을 문자열에서 가장 오른쪽의 개행문자를 제거하지 않는다. (기본값)

reset_insert

RESET 기능 수행 후 INSERT MODE 처리에 대해 설정한다.

  • true : RESET 수행 후 INSERT MODE를 해제한다.

  • false : RESET 수행 후 INSERT MODE를 해제하지 않는다. (기본값)

Color configurations

Html에서 지정 가능한 색상 이름으로 설정한다. 값은 CSS의 color 자료형을 쓸 수 있다.

  • prot_intens : protected 필드 중 밝게 표시되는 필드(intensified)의 텍스트 색상을 설정한다. (기본값: white)

  • prot_normal : protected 필드의 텍스트 색상을 설정한다. (기본값: turquoise)

  • unprot_intens : unprotected 필드 중 밝게 표시되는 필드(intensified)의 텍스트를 설정한다. (기본값: red)

  • unprot_normal : unprotected 필드의 텍스트 색상을 설정한다. (기본값: green)

  • default_fg : 위의 4가지 항목에 해당되지 않는 필드의 텍스트 색상을 설정한다. (기본값: white)

  • outline_fg : 모든 필드의 outline 색상을 설정한다. (기본값: cornflowerblue)

vertical_line

웹터미널에 그려지는 수직선의 위치를 조절한다.

  • left : 수직선을 픽셀의 왼쪽에 그린다. (기본값)

  • middle : 수직선을 픽셀의 가운데에 그린다.

  • right : 수직선을 픽셀의 오른쪽에 그린다.

기타 설정 파일

추가 설정 파일은 아래 위치에 ofgwconf 폴더에 OpenFrame GW 설정과 함께 한다.

$JEUS_HOME/domains/<domain_name>/servers/<server_name>/lib/application/ofgwconf/
파일 설명

initScreen.txt

접속할 때 초기 화면 출력을 나타내기 위한 파일이다.

ofgw.properties

OpenFrame GW와 통신하는 DB 및 Tmax와 웹 터미널의 설정을 위한 파일이다.

해당 설정항목에 대한 자세한 설명은 OpenFrame GW "운영자 안내서"를 참고한다.