setErrorForComponentID()
sysLib.setErrorForComponentID() 시스템 함수는 메시지와 JSF 핸들러의 필드를 연관시킵니다.
연관은 웹 페이지의 컴포넌트 ID를 기반으로 합니다. JSF 핸들러가 함수를 호출하는 경우 메시지는 JSP에서 메시지 또는 메시지 태그의 위치에 배치됩니다.
관련 웹 페이지가 표시되면 메시지가 표시됩니다. 이 함수를 유효성 검증 루틴의 일부로 사용하거나 정보용 메시지에 사용할 수 있습니다.
유효성 검증 함수가 sysLib.setErrorForComponentID()를 호출하면 함수가 종료될 때 웹 페이지가 자동으로 다시 표시됩니다.
여러 메시지를 컴포넌트와 연관시킬 수 있습니다. JSF 핸들러가 forward 문을 실행하면 메시지가 손실됩니다.
구문
sysLib.setErrorForComponentID(
componentID STRING in,
msgKey STRING in
[, msgInserts STRING in])
- componentID
- 메시지와 연관시킬 웹 페이지의 컴포넌트 ID로 formName:componentName 양식입니다. 여기서 formName은 컴포넌트가 있는 양식의 ID이고 componentName은 컴포넌트의 ID입니다.
- msgKey
- 입력은 STRING 유형과 지정 호환 가능한 표현식 또는 변수입니다. msgKey는 런타임 시 사용되는 특성 파일 또는 메시지 자원 번들에 대한 키를 제공합니다. 키가 공백인 경우 메시지는 파일에 있는 모든 메시지의 연결입니다.
- msgInserts
- 입력은 STRING 유형과 지정 호환 가능한 하나 이상의 표현식
또는 변수입니다. 각 msgInserts는
출력 메시지에 삽입됩니다. 메시지 텍스트의 대체 기호는
다음 예제와 같이 중괄호로 묶인 정수입니다.
Invalid file name {0} - 삽입항목의 배열을 사용하는 sysLib.getMessage()와 달리 sysLib.setErrorForComponentID()는 대체의 개별 매개변수를 사용합니다.
- msgText
- 입력은 STRING 유형과 지정 호환 가능한 표현식 또는 변수입니다. 이는 웹 페이지 자체와 연관된 메시지의 텍스트입니다.
예제
다음 예제는 메시지 파일 errorMessages_en_US.properties의 항목을 표시합니다.
badname = The name you entered, {0}, is not valid.
다음 예제는 이 메시지를 사용하는 코드 섹션을 표시합니다.
userName STRING = getUserName(); // ask for input
rc = validateUserName(userName);
if (rc < 0)
SysLib.setErrorForComponentID( "form1:CustName",
SysLib.getMessage( "badname", [ userName ] ) );
end
호환성
| 플랫폼 | 문제 |
|---|---|
| COBOL 생성 | setErrorForComponentID() 함수는 지원되지 않습니다. |
| JavaScript 생성 | setErrorForComponentID() 함수는 지원되지 않습니다. |