저는 javascript와 xpages가 새롭습니다. 이전 메모 응용 프로그램을 xpages로 업그레이드하고 있습니다. 내 xpage에는 필드, 저장 버튼 및 오류 메시지 컨트롤이 있습니다. 이 필드는 사용자가 나중에 사용하기 위해 입력 한 nsf 경로/이름의 값을 저장하는 데 사용됩니다 (예 : //SAS/address.nsf). 해당 경로/데이터베이스가 존재하는지 어떻게 확인합니까? 에서xpages 데이터베이스 유효성 확인
svr$= source.FieldGetText("ServerPath")
dbsvr$= source.FieldGetText("DBPath")
Dim db1 As New NotesDatabase(svr$ , dbsvr$)
If Not db1.IsOpen Then
Messagebox "Cannot find the database."
Call source.GotoField("DBPath")
continue = False
Exit Sub
End If
:이 같은 이전 LotusScript와는 (.이 서버 경로를 얻기 위해이 필드를 사용하여 DB를 경로를 얻을 다른 하나는하지만 현재 xpage를 들어, 요구 사항은 하나 개의 필드 만 사용하는 것입니다) xpage의 필드, validateExpression validator를 추가했습니다. 표현 속성에서 다음 SSJS를 계산합니다.
var dbdir:NotesDbDirectory = session.getDbDirectory(null);
var db:NotesDatabase = dbdir.openDatabase(document1.getItemValue("dbpath"));
return db.isOpen();
유효성 검사기의 message 속성에 "Can not find database"를 넣습니다. 나는 점점 계속 해요
오류 :
- 표현이 유효하지 않습니다.
- 표현식이 부울 값을 반환하지 않았습니다.
이 문제를 해결할 수있는 방법? 유효성 검사기를 잘못 사용 했습니까? 로컬 데이터베이스와 다른 서버의 데이터베이스로 이미 테스트를 마쳤습니다. 아무도 작동하지 않는 것 같습니다. 내가 시도한 모든 데이터베이스에는 그들에게 접근 권한이있다.